Comprendre les fonts de dades per a les aplicacions de llenç
Al Power Apps, la majoria d'aplicacions de llenç utilitzen informació externa, emmagatzemada als serveis al núvol, que es denomina Fonts de dades. Un exemple habitual és una taula d'un fitxer de l'Excel que s'emmagatzema al OneDrive for Business Les aplicacions accedeixen a aquestes fonts de dades mitjançant Connexions.
En aquest article es tracten els diferents tipus de fonts de dades i com treballar amb fonts de dades de taula.
És fàcil crear una aplicació que realitzi operacions de lectura i escriptura bàsiques en una font de dades. Però, de vegades, és possible que vulgueu tenir més control sobre la manera com les dades entren a la vostra aplicació i en surten. En aquest article es descriu com les funcions Patch, el DataSourceInfo, Validate i Errors proporcionen més control.
Tipus de fonts de dades
Les fonts de dades es poden connectar a un servei al núvol o poden ser locals en una aplicació.
Fonts de dades connectades
Les fonts de dades més comunes són les taules, que podeu utilitzar per recuperar i emmagatzemar informació. Podeu utilitzar connexions a fonts de dades per llegir i escriure dades en llibres del Microsoft Excel, llistes creades amb el Microsoft Lists, biblioteques del SharePoint, taules SQL i molts altres formats, que es poden emmagatzemar en serveis al núvol, com ara el OneDrive for Business, Dropbox i SQL Server.
Les fonts de dades que no són taules inclouen el correu electrònic, els calendaris, el Twitter i les notificacions, però en aquest article no es tracten aquests altres tipus de fonts de dades.
Fonts de dades locals
Si utilitzeu els controls Galeria, Mostra el formulari i Edita el formulari, és fàcil crear una aplicació que llegeixi i escrigui dades d'una font de dades. Per començar, llegiu l'article Entendre els formularis de dades.
Quan demaneu que el Power Apps creï una aplicació a partir de dades, s'utilitzen aquests controls. En segon pla, l'aplicació utilitza una taula interna per emmagatzemar i manipular les dades que provenen de la font de dades.
Un tipus especial de font de dades és la col·lecció, que és local a l'aplicació i no té el suport d'una connexió a un servei al núvol, de manera que la informació no es pot compartir a través de dispositius per al mateix usuari o entre usuaris. Les col·leccions es poden carregar i desar localment.
Tipus de taules
Les taules que són internes d'una aplicació del Power Apps són valors fixos, de la mateixa manera que un nombre o una cadena és un valor. Les taules internes no s'emmagatzemen en qualsevol lloc, sinó que existeixen a la memòria de l'aplicació. No podeu modificar directament l'estructura i les dades d'una taula. En canvi, el que podeu fer és crear una taula nova mitjançant una fórmula: heu d'utilitzar aquesta fórmula per fer una còpia modificada de la taula original.
Les taules externes s'emmagatzemen en una font de dades per a la recuperació i l'ús compartit posteriors. El Power Apps proporciona "connexions" per llegir i escriure les dades emmagatzemades. Dins d'una connexió, podeu accedir a diverses taules d'informació. Seleccionareu les taules que s'utilitzaran a l'aplicació i cadascuna esdevindrà en una font de dades independent.
Per obtenir més informació, Treballar amb taules proporciona més detalls sobre les taules internes, però també és aplicable a les taules externes que resideixen en un servei al núvol.
Treballar amb taules
Podeu utilitzar fonts de dades de taula de la mateixa manera que utilitzeu una taula interna del Power Apps. Igual que una taula interna, cada font de dades té registres, columnes i propietats que podeu utilitzar a les fórmules. A més:
La font de dades té els mateixos noms de columna i tipus de dades que la taula subjacent de la connexió.
Nota
Per a les fonts de dades del SharePoint i de l'Excel que contenen noms de columna amb espais, el Power Apps substituirà els espais amb "_x0020_". Per exemple, "Nom de la columna" al SharePoint o l'Excel es mostrarà com a "Nom_x0020_de_x0020_la_x0020_columna" al Power Apps quan es mostra a la disposició de dades o s'utilitza en una fórmula.
La font de dades es carrega des del servei automàticament quan es carrega l'aplicació. Podeu forçar que les dades s'actualitzin mitjançant la funció Refresh.
Mentre els usuaris executen una aplicació, poden crear, modificar i suprimir registres, i tornar a inserir aquests canvis a la taula subjacent del servei.
Les funcions DataSourceInfo, Defaults i Validate proporcionen informació sobre la font de dades que podeu utilitzar per optimitzar l'experiència de l'usuari.
Creació de fonts de dades
El Power Apps no es pot utilitzar per crear una font de dades connectada ni modificar-ne l'estructura; la font de dades ja ha d'existir en un servei en algun lloc. Per exemple, per crear una taula en un llibre de treball de l'Excel emmagatzemat al OneDrive, primer heu d'utilitzar l'Excel Online al OneDrive per crear un llibre de treball. A continuació, heu de crear-hi una connexió des de l'aplicació.
No obstant, les fonts de dades de col·lecció es poden crear i modificar dins d'una aplicació, però només són temporals.
Visualitzar un o diversos registres
El diagrama anterior mostra el flux d'informació quan una aplicació llegeix la informació d'una font de dades:
- La informació s'emmagatzema i es comparteix mitjançant un servei d'emmagatzematge (en aquest cas, Microsoft Lists o SharePoint Online).
- Una connexió fa que aquesta informació estigui disponible per a l'aplicació. La connexió s'ocupa de l'autenticació de l'usuari per accedir a la informació.
- Quan s'inicia l'aplicació o es prem la funció Refresh, la informació s'extreu des de la connexió cap a una font de dades de l'aplicació per al seu ús local.
- Les fórmules s'utilitzen per llegir la informació i exposar-la als controls que l'usuari pot veure. Podeu visualitzar els registres d'una font de dades utilitzant una galeria en una pantalla i connectant la propietat Items amb la font de dades: Gallery.Items = DataSource. Els controls es connecten dins la galeria o a la galeria mitjançant la propietat Default dels controls.
- La font de dades també és una taula. Per tant, podeu utilitzar Filter, Sort, AddColumns i altres funcions per refinar i augmentar la font de dades abans d'utilitzar-la en el seu conjunt. També podeu utilitzar Lookup, First, Last i altres funcions per treballar amb registres individuals.
Modificar un registre
A la secció anterior, heu vist com es llegeix una font de dades. Teniu en compte que les fletxes del diagrama anterior són d'una direcció. Els canvis en una font de dades no es tornen a inserir mitjançant les mateixes fórmules amb què es van recuperar les dades. En comptes d'això, s'utilitzen fórmules noves. Sovint, per editar un registre s'utilitza una pantalla diferent que la que s'utilitza per navegar pels registres, especialment en un dispositiu mòbil.
Teniu en compte que, per modificar un registre existent d'una font de dades, el registre ha de provenir originàriament de la font de dades. El registre pot haver-se desplaçat per una galeria, una variable de context i qualsevol nombre de fórmules, però el seu origen hauria de ser rastrejable fins a la font de dades. Això és important perquè la informació addicional es desplaça amb el registre que l'identifica de manera única, de manera que us assegureu que modifiqueu el registre correcte.
El diagrama anterior mostra el flux d'informació per actualitzar una font de dades:
- Un control Edita el formulari proporciona un contenidor per a les targetes d'entrada, que es componen de controls d'entrada d'usuari, com ara un control d'entrada de text o un control lliscant. Les propietats DataSource i Item s'utilitzen per identificar el registre que s'ha d'editar.
- Cada targeta d'entrada té una propietat Default, que normalment es defineix com el camp del registre ThisItem del formulari. A continuació, els controls de la targeta d'entrada agafaran els valors d'entrada de Default. Normalment, no ho heu de modificar.
- Cada targeta d'entrada exposa una propietat Update. Aquesta propietat assigna l'entrada de l'usuari a un camp específic del registre per escriure de nou a la font de dades. Normalment, no ho heu de modificar.
- Un botó o un control d'imatge a la pantalla permet a l'usuari desar els canvis realitzats al registre. La fórmula OnSelect del control crida a la funció SubmitForm per fer aquesta feina. SubmitForm llegeix totes les propietats Update de les targetes i les utilitza per tornar a escriure a la font de dades.
- De vegades hi haurà problemes. Pot ser que falli una connexió de xarxa o bé que el servei faci una comprovació de validació que l'aplicació no coneixia. Les propietats Error i ErrorKind del control del formulari fan que aquesta informació estigui disponible perquè pugueu mostrar-la a l'usuari.
Per tenir un control més detallat del procés, també podeu utilitzar la funció Patch i Errors. El control Edita el formulari exposa una propietat Updates perquè per tal que pugueu llegir els valors dels camps del formulari. També podeu utilitzar aquesta propietat per cridar a un connector personalitzat en una connexió i ometre completament les funcions Patch i SubmitForm.
Validació
Abans de fer un canvi en un registre, l'aplicació ha de fer el que pugui per assegurar-se que el canvi serà acceptable. Hi ha dues raons per a això:
- Comentaris immediats per a l'usuari. El millor moment per solucionar un problema és exactament quan passa, quan és recent a la ment de l'usuari. Literalment, amb cada pulsació o tecleig, pot aparèixer text en vermell que identifica un problema amb la seva entrada.
- Menys trànsit de xarxa i menys latència de l'usuari. Com més problemes es detecten a l'aplicació, menys converses hi ha a la xarxa per detectar i resoldre problemes. Cada conversa dura un temps durant el qual l'usuari ha d'esperar-se abans de poder continuar.
El Power Apps ofereix dues eines per a la validació:
- La font de dades pot proporcionar informació sobre el que és vàlid i el que no ho és. Per exemple, els nombres poden tenir valors mínims i màxims, i es poden requerir una o diverses entrades. Podeu accedir a aquesta informació amb la funció DataSourceInfo.
- La funció Validate utilitza aquesta mateixa informació per comprovar el valor d'una sola columna o d'un registre sencer.
Gestió d'errors
Genial, heu validat el registre. És hora d'actualitzar-lo amb Patch!
Però, ai, pot ser que encara hi hagi algun problema. La xarxa no funciona, la validació del servei ha fallat o l'usuari no té els permisos adequats, per citar alguns dels possibles errors que l'aplicació es pot trobar. Ha de respondre adequadament a les situacions d'error i proporcionar comentaris a l'usuari, així com els mitjans per corregir-les.
Quan es produeixen errors amb una font de dades, l'aplicació registra automàticament la informació d'error i la posa a disposició mitjançant la funció Errors. Els errors estan associats amb els registres que tenien els problemes. Si el problema és quelcom que l'usuari pot corregir, com ara un problema de validació, l'usuari pot tornar a enviar el registre i els errors s'esborraran.
Si es produeix un error en crear un registre amb Patch o Collect, no hi ha cap registre amb què es puguin associar errors. En aquest cas, Patch tornarà un valor en blanc, que es pot utilitzar com l'argument del registre per a Errors. Els errors de creació s'esborren amb l'operació següent.
La funció Errors torna una taula d'informació d'errors. Aquesta informació pot incloure la informació de la columna si l'error es pot atribuir a una columna concreta. Utilitzeu els missatges d'error de nivell de columna dels controls d'etiqueta que són a prop d'on està situada la columna a la pantalla d'edició. Utilitzeu els missatges d'error de nivell de registre en què la Columna de la taula d'errors està en blanc, en una ubicació propera al botó Desa per a tot el registre.
Treballar amb fonts de dades grans
Quan creeu informes de fonts de dades grans (potser milions de registres), es recomana minimitzar el trànsit de xarxa. Suposem que voleu informar a tots els clients que tenen un StatusCode de "Platí" a Nova York. I que la vostra taula Clients conté milions de registres.
No voleu portar els milions de clients a l'aplicació i, a continuació, triar els que vulgueu. El que voleu és que la selecció tingui lloc dins del servei al núvol on està emmagatzemada la vostra taula i només enviar els registres seleccionats a través de la xarxa.
Moltes funcions que podeu utilitzar per triar els registres, però no totes, es poden delegar, la qual cosa vol dir que s'executen dins del servei al núvol. Per aprendre a fer-ho, llegiu la informació sobre la Delegació.
Col·leccions
Les col·leccions són un tipus especial de font de dades. Són locals a l'aplicació i no tenen el suport d'una connexió a un servei al núvol, de manera que la informació no es pot compartir a través de dispositius per al mateix usuari o entre usuaris. Funcionen com qualsevol altra font de dades, amb algunes excepcions:
- Les col·leccions es poden crear dinàmicament amb la funció Collect. No cal que s'estableixin amb antelació, com passa amb les fonts de dades basades en la connexió.
- Les columnes d'una col·lecció es poden modificar en qualsevol moment mitjançant la funció Collect.
- Les col·leccions permeten registres duplicats. Hi pot haver més d'una còpia del mateix registre en una col·lecció. Les funcions com ara Remove s'executaran a la primera coincidència que trobin, a menys que es proporcioni l'argument All.
- Podeu utilitzar les funcions SaveData i LoadData per desar i tornar a carregar una còpia de la col·lecció. La informació s'emmagatzema en una ubicació privada a què no poden accedir altres usuaris, aplicacions o dispositius.
- Podeu utilitzar els controls Exporta i Importa per desar i tornar a carregar una còpia de la col·lecció en un fitxer amb què l'usuari pot interactuar.
Per obtenir més informació sobre com treballar amb una col·lecció com una font de dades, vegeu Crear i actualitzar una col·lecció.
Les col·leccions s'utilitzen habitualment per conservar l'estat global de l'aplicació. Vegeu Treballar amb variables per saber quines opcions hi ha disponibles per gestionar l'estat.
Nota
Ens podeu dir quines són les vostres preferències d'idioma per a la documentació? Responeu una breu enquesta. (tingueu en compte que l'idioma de l'enquesta és l'anglès)
Trigareu uns set minuts a completar l'enquesta. No es recopilen dades personals (declaració de privadesa).