Editați înregistrările tabelelor direct din formularul principal al altui tabel
Există mai multe moduri în care puteți lucra cu înregistrările de tabel corelate pe un formular de tabel în cadrul Power Apps. De exemplu, puteți include tabele înrudite în modul numai citire cu a formular de vizualizare rapidă și puteți crea sau edita o înregistrare folosind o forma principală într-un dialog.
Un alt mod în care puteți lucra cu înregistrările de tabel asociate este prin adăugarea unei comenzi de componentă de formular la formularul principal al altui tabel. Comanda componentei formularului permite utilizatorilor să editeze informații despre o înregistrare de tabel asociată direct din formularul altui tabel.
De exemplu, iată componenta formularului dintr-o filă separată din formularul de cont principal, care permite utilizatorului să editeze o înregistrare de contact fără a părăsi formularul de cont.
De exemplu, iată componenta de formular dintr-o filă existentă din formularul de cont principal, care permite, de asemenea, utilizatorului să editeze o înregistrare de contact fără a părăsi formularul de cont a7>Fila Rezumat .
Adăugați componenta formularului la un formular principal al tabelului
- În panoul de navigare din stânga, selectați Componente. Dacă articolul nu se află în panoul panoului lateral, selectați …Mai multe și apoi selectați elementul dorit.
- Extindeți fie Intrare sau Afișare, apoi selectați Formular a16>.
Pe pagina de configurare a controlului componentelor de formular, selectați proprietățile pentru control:
- Selectați coloana Căutare pentru formular.
- Selectați Formularul asociat. În funcție de configurația tabelului asociată pentru coloană:
- Dacă coloana este conectată la un singur tabel (cum ar fi coloana Created By), selectați Formularul asociat de utilizat.
- Dacă coloana este conectată la mai multe tabele (polimorfe, cum ar fi coloana proprietar), selectați + Formular asociat și apoi selectați Adăugați pentru a adăuga formularul aferent. Continuați să selectați + Formular asociat>Adăugați pentru a adăuga un formular asociat pentru fiecare tabel asociat.
- În mod implicit, toate tipurile de aplicații client Web, Telefon și Tabletă sunt activate pentru afișarea formularului. Goliți tipurile de client unde nu doriți formularul afișat.
- Selectați Terminat.
- Salvați și apoi Publicați formularul.
Adăugați componenta de formular folosind experiența clasică
În acest exemplu, formularul principal standard Contact este configurat pentru controlul componentei formularului care este adăugat în formularul principal al contului.
Important
Modul în care adăugați un control al componentei de formular s-a schimbat. Vă recomandăm să utilizați cea mai recentă experiență. Mai multe informații: Adăugați componenta formular într-un formular principal de tabel
conectați-vă la Power Apps.
Selectați Tabele în panoul din stânga. Ca alternativă, deschideți o soluție, apoi selectați un tabel, cum ar fi Cont. Dacă articolul nu se află în panoul panoului lateral, selectați …Mai multe și apoi selectați elementul dorit.
Selectați Formulare din meniul componente.
Selectați un formular cu un tip de formular Principal din formularele disponibile.
Selectați Comutare la Clasic. Interfața editorului de formulare clasic se deschide ca o filă nouă în browser.
Selectați fila Inserați . Apoi, creați o filă nouă și adăugați o secțiune nouă sau adăugați o secțiune nouă la o filă existentă.
În noua secțiune, adăugați o coloană de căutare, cum ar fi coloana de căutare Contact principal .
Selectați coloana de căutare, apoi în fila Acasă , selectați Modificați proprietăți.
În fila Controale , selectați Adăugați control, în lista de tipuri de control selectați Formulați Controlul componentelor, apoi selectați Adăugați.
Selectați Web, Tabletă și Telefon pentru componenta.
Selectați Editați (pictograma creion) și în caseta de dialog Configurare proprietate selectați Legați la o valoare statică și apoi adăugați o intrare XML similară cu aceasta, unde TableName este numele unic al tabelului și FormID este ID-ul formularului pentru formularul principal:
<QuickForms><QuickFormIds><QuickFormId entityname="TableName">FormID</QuickFormId></QuickFormIds></QuickForms>
- De exemplu, pentru a afișa formularul principal de contact în formularul de cont, utilizați:
<QuickForms><QuickFormIds><QuickFormId entityname="contact">1fed44d1-ae68-4a41-bd2b-f13acac4acfa</QuickFormId></QuickFormIds></QuickForms>
- De exemplu, pentru a afișa formularul principal de contact în formularul de cont, utilizați:
Selectați OK, apoi selectați din nou OK .
Salvați și apoi Publicați formularul dvs.
Sfat
Pentru a găsi numele unic pentru un tabel, selectați tabelul din Power Apps și apoi selectați Setări. Nume apare în panoul de tabel Editare . ID-ul formularului poate fi găsit în adresa URL a browserului atunci când editați un formular. ID-ul urmează porțiunea /edit/ a adresei URL.
În clasicul proiectant de formulare, ID-ul formularului urmează porțiunea formId%3d a adresei URL.
Comportament componentă formular
Această secțiune descrie comportamentul componentelor formularului atunci când este utilizat într-o aplicație proiectată pe bază de model.
Selectarea înregistrărilor
Pentru ca controlul componentei formularului să afișeze un formular, coloana de căutare la care este legat trebuie să aibă o valoare. În caz contrar, controlul va afișa mesajul Înregistrarea sursă nu este selectată. O modalitate de a seta valoarea este să adăugați formularului un control de căutare care este legat de aceeași coloană de căutare ca și controlul componentei formularului. Când utilizați controlul de căutare pentru a modifica valoarea coloanei de căutare, controlul componentei formularului va afișa un formular cu datele pentru noua valoare a coloanei de căutare.
Validarea coloanei
Toate coloanele, atât în formularul principal, cât și în comenzile componentelor formularului, trebuie să fie valabile pentru ca datele să fie trimise la Microsoft Dataverse. Acest lucru este valabil atât pentru erorile de validare a coloanelor, coloanele necesare lipsă și așa mai departe.
OnSave
manevrele sunt executate pentru formularul principal și controalele componente ale formularului. Orice handler poate anula salvarea pentru formularul principal și controalele componente ale formularului utilizând preventDefault. Aceasta înseamnă că nicio operațiune de salvare nu poate apela preventDefault
pentru ca datele să fie trimise către Dataverse. Ordinea în care sunt apelați OnSave
handlerii nu este definită. Mai multe informații: Form OnSave Event (referință la API-ul client) în aplicațiile bazate pe model
Salvare înregistrare
Odată trecută etapa de validare, datele pentru fiecare înregistrare sunt trimise către Dataverse. În prezent, fiecare înregistrare este actualizată independent cu solicitări diferite. Salvările nu sunt tranzacționale și ordinea salvărilor nu este definită. O eroare la salvarea unei componente de formular nu va anula modificările la formularul principal sau la alte componente de formular. După finalizarea fiecărei salvări, datele sunt actualizate pentru toate înregistrările din formular.
Notificări
Notificările privind componenta formularului sunt agregate în notificările formularului principal. De exemplu, dacă există coloane nevalide în componenta formularului și încercați să salvați, notificarea de coloană nevalidă va apărea în partea de sus a formularului principal, mai degrabă decât în componenta formularului.
Eroare la tratare
Dacă există mai multe erori în timpul salvării, utilizatorului i se va afișa o singură eroare. Dacă utilizatorul poate face modificări pentru a remedia prima eroare și salvează, va deveni vizibilă următoarea eroare. Utilizatorul trebuie să continue să salveze până când toate erorile vor fi rezolvate.
Modificarea înregistrărilor cu modificări nesalvate
Dacă există modificări nesalvate într-un formular pentru o componentă de formular și un utilizator încearcă să schimbe coloana de căutare la care este asociată componenta de formular, utilizatorul va primi o alertă în legătură cu această modificare.
API client
Un context de formular este disponibil pentru controlul componentei formularului. Poate fi accesat prin contextul formularului principal prin accesarea controlului printr-un API, cum ar fi getControl. Înainte de a accesa datele pentru tabelul aferent din controlul componentei formularului, gestionatorii de evenimente ar trebui să aștepte API-ul isLoaded pentru ca controlul să returneze true.
Limitări
Rețineți următoarele limitări atunci când adăugați comanda componentei formularului la un formular de tabel:
Comanda componentei formularului acceptă randarea formularelor principale. În mod similar, suportul pentru adăugarea unei comenzi de componentă de formular este acceptat numai la formularele principale. Alte tipuri de formulare, cum ar fi crearea rapidă, vizualizarea rapidă și cardul nu sunt acceptate.
Formularele cu un flux de business nu sunt acceptate în prezent nici în formularul principal de tabel, nici în formularul de tabel asociat. Dacă aveți un formular cu un flux de business, este posibil să întâlniți un comportament neașteptat. Vă recomandăm să nu utilizați o componentă de formular cu un formular care utilizează un flux de business.
Comanda componentei formularului nu acceptă comenzi de componente de formular încorporate, cum ar fi adăugarea unei comenzi de componentă de formular la un formular care este utilizat de o comandă de componentă de formular.
Controlul componentei formularului nu acceptă aplicațiile planșă de lucru încorporate. Este posibil să întâmpinați un comportament neașteptat cu aceste aplicații planșă de lucru.
Comanda componentei formularului va afișa prima filă a formularului pe care o folosește dacă sunt incluse mai multe file în acel formular.
Utilizarea aceluiași formular pentru controalele componentelor de formular diferite pe un singur formular nu este acceptată.
Formularul pe care îl utilizați cu o componentă de formular trebuie să fie inclus în aplicația dvs.. Dacă nu este acceptată sau dacă utilizatorul actual nu are acces la formular, acesta va reveni la cel mai de sus formular principal care este inclus în aplicație și este disponibil utilizatorului (pe baza ordinii formularelor).
Toate componentele utilizate de formular într-o componentă de formular trebuie să fie incluse în aplicația dvs.. Aceste componente includ tabele, vizualizări și fluxuri de procese de afaceri asociate. Dacă nu sunt, nu vor fi disponibile în formular sau poate exista un comportament neașteptat.
Controalele componentelor formularului au anumite limitări atunci când sunt redate în aplicații cu mai multe sesiuni. Mai exact, este posibil ca handlerele adăugate dinamic pe formularul componentei formularului, cum ar fi
addOnSave
sauaddOnChange
, să nu ruleze după comutarea filelor cu mai multe sesiuni.Este posibil să observați că peretele cronologiei s-ar putea să nu se actualizeze atunci când o coloană utilizată pentru a seta peretele cronologic s-a schimbat în componenta formular. Când pagina este reîmprospătată, peretele cronologiei se va actualiza conform așteptărilor.
Pe dispozitivul mobil, controlul cronologiei nu apare în prezent în controlul componentei formularului.
Pentru subgrile, butoanele de comandă Vedeți toate înregistrările și Vedeți înregistrările asociate nu vor fi disponibile dacă sunt redat în interiorul unei componente de formular.
Controalele componentelor formularului nu sunt acceptate în dialogurile de editare masivă. Acestea nu vor apărea în formular în dialogul de editare masivă în mod implicit și orice modificări aduse înregistrărilor de tabel corelate cu acestea nu vor fi salvate.
Când sunt detectate înregistrări duplicate atunci când este salvat un control al unei componente de formular, este posibil ca utilizatorii să nu poată vizualiza duplicatele pentru a rezolva conflictele.
Consultați și
Utilizați controale personalizate pentru vizualizările datelor aplicației bazate pe model