Editar registres de taula relacionats directament des del formulari principal d'una altra taula

Hi ha diverses maneres de treballar amb registres de taula relacionats en un formulari de taula dins d'una aplicació del Power Apps. Per exemple, podeu incloure taules relacionades en mode de només lectura amb un formulari de cerca ràpida i crear o editar un registre mitjançant un formulari principal en undiàleg.

Una altra manera de treballar amb registres de taula relacionats és afegir un control de component de formulari al formulari principal d'una altra taula. El control del component de formulari permet als usuaris editar informació d'un registre de taula relacionat directament des del formulari d'una altra taula.

Per exemple, aquest és el component de formulari en una pestanya independent del formulari de compte principal, la qual cosa permet a l'usuari editar un registre de contacte sense sortir del formulari de compte.

Control de components de formulari afegit a una pestanya diferent

Per exemple, aquí teniu el component de formulari d'una pestanya existent al formulari de compte principal, que també permet a l'usuari editar un registre de contacte sense sortir de la pestanya Resum del formulari del compte.

Control de components de formulari afegit a una pestanya existent

Afegir el component de formulari a un formulari principal de taula

En aquest exemple, el formulari principal estàndard de contacte es configura per al control del component de formulari que s'afegeix al formulari principal del compte.

  1. Inicieu la sessió a Power Apps.

  2. Seleccioneu Dataverse i, a continuació, seleccioneu Taules a la subfinestra esquerra. Com a alternativa, seleccioneu una solució al menú i seleccioneu una taula, com ara Compte.

  3. Seleccioneu Formularis al menú components.

  4. Seleccioneu un formulari amb un tipus de formulari principal dels formularis disponibles.

  5. Seleccioneu Canvia al mode clàssic. La interfície clàssica editor de formularis s'obre com una pestanya al navegador.

  6. Seleccioneu la pestanya Insereix. A continuació, creeu una pestanya nova i afegiu una secció nova o afegiu una secció nova a una pestanya existent.

  7. A la secció nova, afegiu una columna de cerca, com ara la columna de cerca Contacte principal.

  8. Seleccioneu la columna de cerca i, a la pestanya Inici, seleccioneu Canvia les propietats.

  9. A la pestanya Controls, seleccioneu Afegeix control, a la llista de tipus de control seleccioneu Control de components de formulari i, a continuació, seleccioneu Afegeix.

    Seleccionar el control de component de formulari.

  10. Seleccioneu Web, Tauleta i Telèfon per al component.

  11. Seleccioneu Edita (icona de llapis) i, al quadre de diàleg Configura la propietat, seleccioneu Enllaça amb un valor estàtic i, a continuació, afegiu una entrada XML semblant a aquesta on TableName és el nom únic de la taula i FormID és l'identificador de formulari del formulari principal: <QuickForms><QuickFormIds><QuickFormId entityname="TableName">FormID</QuickFormId></QuickFormIds></QuickForms>

    • Per exemple, per representar el formulari principal de contacte al formulari de compte, utilitzeu: <QuickForms><QuickFormIds><QuickFormId entityname="contact">1fed44d1-ae68-4a41-bd2b-f13acac4acfa</QuickFormId></QuickFormIds></QuickForms>

    Configurar el control de component de formulari.

  12. Seleccioneu D'acord i, a continuació, D'acord un altre cop.

  13. Fes clic a Desa i Publica el formulari.

Suggeriment

Per trobar el nom únic d'una taula, seleccioneu la taula a Power Apps i seleccioneu Configuració. El Nom apareix a la subfinestra de la taula Edita. L'ID del formulari es pot trobar a l'adreça URL del navegador quan editeu un formulari. L'ID segueix la part /edit/ de l'adreça URL. L'ID del formulari es pot trobar a l'adreça URL del navegador quan s'obre un formulari al dissenyador de formularis modern.

Al dissenyador de formularis clàssic, l'ID del formulari segueix la part formId%3d de l'adreça URL.

Comportament del component del formulari

Aquesta secció descriu el comportament del component de formulari quan s'utilitza en una aplicació basada en models.

Selecció de registres

Per tal que el control del component de formularis mostri un formulari, la columna de cerca amb la qual està unit ha de tenir un valor. Altrament, el control mostrarà el missatge No s'ha seleccionat cap registre d'origen. Una manera de definir el valor és afegir al formulari un control de cerca que estigui lligat a la mateixa columna de cerca que el control dels components del formulari. Quan utilitzeu el control de cerca per canviar el valor de la columna de cerca, el control dels components del formulari mostrarà un formulari amb les dades del valor nou de la columna de cerca.

Validació de columnes

Totes les columnes, tant del formulari principal com dels controls dels components del formulari, han de ser vàlides per poder enviar les dades a Microsoft Dataverse. Això és cert per als dos errors de validació de columna i les columnes necessàries que falten, així successivament.

Els controladors OnSave s'executen per al formulari principal i els seus controls de components de formulari. Qualsevol controlador pot cancel·lar l'acció de desar per al formulari principal i els controls dels components del formulari mitjançant preventDefault. Això significa que cap operació de desar pot trucar a preventDefault perquè s'enviïn dades a Dataverse. L'ordre en què es truquen els controladors OnSave no està definit. Més informació: Incidència OnSave de formulari (referència a l'API de client) a les aplicacions controlades per models

Desament del registre

Un cop passada la fase de validació, s'envien les dades a Dataverse de cada registre. Actualment, cada registre s'actualitza de manera independent amb diferents sol·licituds. Els desaments no són transaccionals i el seu ordre no està definit. Un error en desar un component de formulari no recuperarà els canvis del formulari principal ni d'altres components del formulari. Un cop completada cada opció de desar, s'actualitzen les dades per a tots els registres del formulari.

Notificacions

Les notificacions del component de formulari s'agreguen a les notificacions del formulari principal. Per exemple, si el component del formulari té columnes no vàlides i s'intenta desar, la notificació de columna no vàlida apareixerà a la part superior del formulari principal i no pas al component del formulari.

Gestió d'errors

Si hi ha diversos errors en desar, només es mostrarà un error a l'usuari. Si l'usuari pot fer canvis per corregir el primer error i desaments, l'error següent estarà visible. L'usuari haurà de continuar desant fins que es resolgui tots els errors.

Canviar registres amb canvis que no s'han desat

Si hi ha canvis sense desar en un formulari per a un component de formulari i un usuari prova de canviar la columna de cerca amb la que està enllaçat el component del formulari, s'avisarà a l'usuari sobre aquest canvi.

API del client

Un context de formulari està disponible per al control de components del formulari. S'hi pot accedir a través del context del formulari principal mitjançant l'accés al control a través d'una API, com ara getControl. Abans d'accedir a les dades de la taula relacionada en el control de components de formulari, els controladors d'esdeveniments haurien d'esperar que l'API isLoaded del control retorni true.

Limitacions

Tingueu en compte les limitacions següents quan afegiu el control de components del formulari a un formulari de taula:

  • El control del component de formulari només admet la representació de formularis principals. De la mateixa manera, la compatibilitat per afegir un control de component de formulari només està admesa als formularis principals. Hi ha altres tipus de formularis, com ara la creació ràpida, la visualització ràpida i la targeta que no estan admesos.

  • Els formularis amb un flux del procés de negoci no s'admeten actualment al formulari de taula principal ni al formulari de taula relacionat. Si teniu un formulari amb un flux del procés de negoci, pot ser que trobeu un comportament inesperat. Es recomana no utilitzar un component de formulari amb un formulari que utilitzi una flux del procés de negoci.

  • El control del component de formulari no admet els controls dels components de formulari incrustats, com ara afegir un control de component de formulari a un formulari que utilitza un control de components de formulari.

  • El control del component de formulari només mostrarà la primera pestanya del formulari que utilitza si s'inclouen diverses pestanyes al formulari.

  • L'ús del mateix formulari per a diferents controls de components de formulari no està admesa.

  • El formulari que utilitzeu amb un component de formulari s'ha d'incloure a l'aplicació. Més informació: Afegir un component.

  • Potser observeu que el mur de cronologia no s'actualitza quan una columna que s'utilitza per definir el mur de cronologia ha canviat en el component de formulari. Quan s'actualitzi la pàgina, el mur de cronologia s'actualitzarà tal com està previst.

  • Al mòbil, el control de cronologia no apareix actualment al control de components del formulari.

  • Per a les subquadrícules, els botons de l'ordre Mostra tots els registres i Mostra els registres associats no estaran disponibles si es representen en un component de formulari.

  • Els controls dels components de formulari no s'admeten als diàlegs d'edició massiva. No apareixeran al formulari al quadre de diàleg d'edició massiva per defecte i els canvis fets als registres de taula relacionats amb ells no es desaran.

Consulteu també

Utilitzar controls personalitzats per a visualitzacions de les dades d'aplicacions basades en aplicacions