Partajați prin


Înțelegeți cardurile de date din aplicațiile proiectate pe pânză

Controalele card sunt elementele de bază ale comenzilor Editați formular și Afișați formular în aplicațiile canvas. Formularul reprezintă întreaga înregistrare și fiecare card reprezintă un singur câmp al înregistrării respective.

Interacționați cu ușurință cu cardurile în panoul din dreapta după ce selectați un control de formular în spațiul de lucru de proiectare. În acel panou, puteți alege care câmpuri să fie afișate, cum să afișați fiecare câmp și în ce ordine să le afișați. De exemplu, imaginea de mai jos arată un control Editare formular într-o aplicație creată dintr-o listă numită Assets, unde puteți personaliza câmpurile pentru a răspunde nevoilor dvs. specifice.

Captură de ecran a primului ecran care arată un control de formular Editare într-o aplicație construită dintr-o listă numită Active.

Începeți cu cardurile citind adăugați un formular și înțelegeți formularele de date. Restul acestui articol explică modul în care funcționează cardurile și cum să le personalizezi sau să le creezi pe ale tale.

Carduri predefinite

Power Apps oferă un set predefinit de carduri pentru șiruri, numere și alte tipuri de date, ceea ce facilitează adaptarea aplicației la cerințele specifice de date. În panoul din dreapta, vedeți variațiile disponibile și puteți schimba cardul utilizat pentru un câmp:

Cartea selectată.

În acest exemplu, este selectat un card text cu o singură linie, dar textul URL este mai lung decât ceea ce se potrivește pe o singură linie. Să schimbăm într-un card text cu mai multe linii pentru a oferi utilizatorilor noștri mai mult spațiu de editat:

Editare pe mai multe linii.

Mai multe câmpuri din această sursă de date nu sunt afișate, dar puteți afișa sau ascunde un câmp bifând caseta de selectare a acestuia. Acest exemplu arată cum să afișați câmpul SecurityCode .

Personalizați un card

Cardurile includ alte comenzi. Într-un control Editare formular , utilizatorul introduce date într-un control standard Introducere text pe care îl adăugați din fila Inserare .

Acest articol prezintă un exemplu despre cum să schimbați aspectul unei cărți prin manipularea controalelor din acesta.

  1. Mai întâi, reveniți la cardul care a fost introdus cel mai recent pentru câmpul SecurityCode . Selectați acest card făcând clic sau atingându-l o dată:

    Selectați codul de securitate.

  2. Selectați controlul Introducere text din interiorul cardului făcând clic sau atingând controlul de intrare în sine.

    Selectați introducerea textului.

  3. Mutați controlul în interiorul cardului trăgând caseta de selecție și redimensionați-l trăgând mânerele de-a lungul marginii casetei de selecție:

    Personalizați introducerea textului.

Redimensionați, mutați și efectuați alte modificări la comenzile dintr-un card, dar nu îl puteți șterge fără să îl deblocați mai întâi.

Deblocarea unui card

Pe lângă faptul că conțin controale, cardurile în sine sunt controale cu proprietăți și formule, permițând personalizare avansată. Când alegeți să afișați un câmp într-un formular, panoul din dreapta creează automat cardul pentru dvs. și generează formulele necesare, economisind timp și efort. Putem vedea aceste formule în fila Avansat din panoul din dreapta:

Blocat avansat.

Vedeți imediat una dintre cele mai importante proprietăți ale cardului: proprietatea DataField . Această proprietate indică ce câmp al sursei de date vede utilizatorul și poate edita în acest card.

În fila Avansat , bannerul din partea de sus indică faptul că proprietățile acestui card sunt blocate. O pictogramă de lacăt apare și lângă proprietățile DataField, DisplayName și Required . Panoul din dreapta a creat aceste formule, iar blocarea previne modificări accidentale ale acestor proprietăți.

Pictograme de blocare.

Selectați bannerul din partea de sus pentru a debloca cardul, astfel încât să puteți modifica aceste proprietăți:

Card deblocat.

Modificați DisplayName pentru a pune un spațiu între Asset și ID. Prin această modificare, modificăm ceea ce a fost generat pentru noi. În panoul din dreapta, acest card are o etichetă diferită:

Schimbați numele afișat.

Acum ați preluat controlul asupra acestui card și îl puteți modifica în continuare pentru a se potrivi nevoilor dvs. Dar ați pierdut capacitatea de a schimba cardul de la o reprezentare la alta (de exemplu, text cu o singură linie în text cu mai multe rânduri), așa cum ați făcut înainte. Ați transformat cardul predefinit într-un „card personalizat” pe care îl controlați acum.

Important

Nu puteți rebloca un card dacă îl deblocați. Pentru a readuce un card la o stare de blocare, scoateți-l și introduceți-l în panoul din dreapta.

Puteți modifica aspectul și comportamentul unui card deblocat într-o varietate de moduri, cum ar fi adăugarea și ștergerea controalelor din cadrul acesteia. De exemplu, puteți adăuga o formă de stea din meniul Icoane din fila Inserare .

Adăugați o stea.

Steaua este acum o parte a cardului și va călători cu el dacă, de exemplu, reordonați cardurile în formular.

Ca un alt exemplu, deblocați cardul ImageURL și apoi adăugați-i un control Image din fila Insert :

Adăugați o imagine.

În bara de formule, setați Imagine proprietatea acestui control la TextBox.Text, unde TextBox este numele controlului . deține adresa URL:

Afișați imaginea.

Acum puteți vedea imaginile și puteți edita adresele URL ale acestora. Rețineți că am fi putut folosi Parent.Default ca proprietate Imagine , dar nu s-ar fi actualizat dacă utilizatorul ar fi schimbat adresa URL.

Același lucru îl putem face pe al doilea ecran al acestei aplicații, unde folosim un control Afișare formular pentru a afișa detaliile unei înregistrări. În acest caz, este posibil să dorim să ascundem eticheta (setați Vizibil proprietatea etichetei, nu cardul, la false), deoarece utilizatorul nu va edita adresa URL pe ecranul respectiv:

Afișează imaginea.

Interacționarea cu un formular

După deblocarea unui card, puteți schimba modul în care interacționează cu formularul care îl conține.

Iată instrucțiuni despre cum funcționează controalele cu cardul lor și cum funcționează cardurile cu formularul. Aceste instrucțiuni vă ajută să înțelegeți cum să creați formule care să facă referire la alte controale, inclusiv carduri și controale din cadrul cardurilor. Fiți creativ – puteți crea o aplicație în mai multe moduri, pentru a se potrivi nevoilor dvs. specifice.

Proprietatea Câmp de date

Cea mai importantă proprietate de pe card este proprietatea DataField . Această proprietate controlează validarea, determină ce câmp este actualizat și gestionează alte aspecte ale cardului.

Informații care intră

Ca container, formularul face ca ThisItem disponibil pentru toate cardurile din el. Această înregistrare conține toate câmpurile pentru înregistrarea curentă de interes.

Proprietatea Implicită a fiecărui card ar trebui să fie setată la ThisItem.FieldName. În unele cazuri, puteți transforma această valoare pe măsură ce apare. De exemplu, poate doriți să formatați un șir sau să traduceți valoarea dintr-o limbă în alta.

Fiecare control din card ar trebui să facă referire la Parent.Default pentru a ajunge la valoarea câmpului. Această strategie încapsulează cardul, permițând proprietatea implicită a cardului să se schimbe fără a afecta formulele sale interne.

În mod implicit, proprietățile DefaultValue și Required sunt preluate din metadatele sursei de date pe baza proprietății DataField . Puteți suprascrie aceste formule cu propria logică, integrând metadatele sursei de date utilizând funcția DataSourceInfo .

Informații care ies

După ce utilizatorul modifică o înregistrare utilizând controalele din carduri, funcția SubmitForm salvează acele modificări în sursa de date. Când funcția respectivă rulează, controlul formular citește valorile proprietății DataField fiecărei carduri pentru a ști ce câmp să schimbe.

Controlul formularului citește și valoarea proprietății Actualizare a fiecărei carduri. Această valoare este stocată în sursa de date pentru acest câmp. Acesta este locul pentru a aplica o altă transformare, poate pentru a inversa transformarea care a fost aplicată în formula Implicită a cardului.

Proprietatea Valid este determinată de metadatele sursei de date, pe baza proprietății DataField . De asemenea, se bazează pe proprietatea Required și dacă proprietatea Update conține o valoare. Dacă valoarea de pe proprietatea Actualizare nu este validă, proprietatea Eroare furnizează un mesaj de eroare ușor de utilizat.

Dacă proprietatea DataField a unui card este gol, cardul acționează ca un container pentru controale. Proprietățile sale Valide și Actualizare nu participă la trimiterea formularului.

Disecarea unui exemplu

Să explorăm controalele care alcătuiesc un card de bază de introducere a datelor. Spațiul dintre comenzi este mărit pentru a le afișa fiecare mai clar, ajutându-vă să înțelegeți cum contribuie fiecare componentă la funcționalitatea cardului:

Carte de disecție.

În acest grafic, controalele din cardul de date au fost etichetate:

Cartele de disecție.

Patru comenzi fac cardul să funcționeze:

Nume Tipul Descriere
TextRequiredStar Eticheta control Afișează o stea, care este folosită în mod obișnuit în formularele de introducere a datelor pentru a indica faptul că este obligatoriu un câmp.
TextFieldDisplayName Eticheta control Afișează numele ușor de utilizat al câmpului. Acest nume poate diferi de ceea ce este în schema sursei de date.
InputText Introduceți text control Afișează valoarea inițială a câmpului și permite utilizatorului să modifice această valoare.
TextErrorMessage Eticheta control Afișează utilizatorului un mesaj de eroare ușor de utilizat dacă apare o problemă cu validarea. De asemenea, asigură că câmpul are o valoare dacă este necesară.

Pentru a popula aceste controale cu date, proprietățile lor sunt determinate de proprietățile cardului prin aceste formule cheie. Formulele se referă la un anumit câmp. În schimb, toate informațiile provin de pe card.

Proprietate control Formulă Descriere
TextRequiredStar.Visible Părinte.Necesar Steaua apare doar dacă este obligatoriu câmpul. Obligatorie este o formulă condusă de dvs. sau de metadatele din sursa de date.
TextFieldDisplayName.Text Parent.DisplayName Controlul casetei de text arată numele ușor de utilizat, pe care dvs. sau metadatele sursei de date îl furnizați și care este setat pe proprietatea DisplayName a cardului.
InputText.Default Părinte.Implicit Controlul de introducere text arată inițial valoarea câmpului din sursa de date, astfel cum este furnizat de valoarea implicită a cardului.
TextErrorMessage.Text Parent.Eroare Dacă apare o problemă de validare, proprietatea Eroare a cardului oferă un mesaj de eroare corespunzător.

Notă

Proprietatea Parent.Error este o proprietate numai de ieșire pe care nu o puteți seta folosind o formulă. Această proprietate nu apare în lista de proprietăți din colțul din stânga sus sau în filele Proprietăți sau Avansate de lângă marginea dreaptă. Bara de formule sugerează această proprietate dacă scrieți o formulă care face referire la proprietate.

Pentru a scoate informații din aceste controale și a le împinge înapoi în sursa de date, utilizați următoarele formule cheie:

Numele controlului Formula Descriere
DataCard.DataField „AprobatorEmail” Numele câmpului pe care utilizatorul îl poate afișa și edita în acest card.
DataCard.Actualizare InputText.Text Valoarea de validat și împins înapoi în sursa de date când rulează SubmitForm .