Prezentare generală a comenzilor moderne
Pentru aplicațiile create pe bază de model, comenzile determină comportamentul esențial al aplicației. Acestea sunt butoanele cu care utilizatorii interacționează atunci când joacă aplicații și acțiunile rezultate efectuate atunci când un buton este selectat. Fiecare comandă este plasată în relație cu altele și asociată cu o anumită locație de pe bara de comenzi din aplicație.
La nivel general, particularizarea comenzilor se încadrează în următoarele categorii. Există capacități diferite în cadrul fiecărei categorii, acestea fiind acoperite mai în profunzime în documentația despre comenzile moderne:
- Afişa. Cum este afișat butonul și unde se află într-o aplicație. De exemplu, eticheta butonului, pictograma și etichetele de accesibilitate, precum și unde se află bara de comandă și poziția pe bara de comandă.
- Acţiune. Logica ce se execută atunci când este selectat un buton. De exemplu, crearea și actualizarea datelor sau interacțiunea cu diverse controale și pagini din aplicație.
- Vizibilitate. Condiții logice care specifică dacă un buton este vizibil sau ascuns pentru un utilizator. De exemplu, este posibil să doriți ca butonul să fie vizibil pentru unii utilizatori și ascuns pentru alții. Sau poate că butonul ar trebui să fie vizibil numai atunci când sunt îndeplinite anumite criterii ale înregistrărilor de date.
Locații bară de comenzi
-
Grila principală. Această bară de comenzi este afișată atunci când utilizați navigarea din stânga a unei aplicații pentru a vizualiza o listă completă de pagini cu înregistrări din acest tabel.
-
Forma principală. Această bară de comenzi este afișată pe formularele principale ale tabelului. Acesta apare în partea de sus a formularului și nu este același cu vizualizarea asociată sau vizualizarea subgrilă care apare în diferite zone ale formularului.
-
Vedere subgrilă. Această bară de comenzi este afișată pe formularele altor tabele care redau datele acestui tabel în cadrul unei subgrile. De exemplu, formularul principal al contului are un subgrid control care listează înregistrările de contact legate de înregistrarea contului. Pentru a edita bara de comandă afișată aici, editați bara de comandă pentru tabelul de contacte, apoi vizualizarea subgrilă.
-
Vedere asociată. Această bară de comenzi este afișată pe formularul unui tabel principal la vizualizarea datelor corelate din acest tabel. De exemplu, din forma principală a unei înregistrări de cont, selectați Înrudit apoi selectați un tabel asociat, cum ar fi contacte.
-
Acțiuni rapide. Acțiunile rapide sunt asociate cu locația principală din grilă. Pentru a adăuga sau edita comenzi, atât pentru acțiuni rapide, cât și pentru locațiile principale din grilă, selectați tabelul dorit din proiectantul de aplicații modern, apoi editați bara de comenzi și alegeți locația principală din grilă. Vor fi afișate și primele cinci comenzi, determinate în ordine, ca acțiuni rapide atunci când este redată aplicația.
Notă
Locațiile barei de comandă personalizate mai puțin frecvent nu sunt acceptate în designerul de comenzi. Vezi Bara de comandă globală și alte panglici secțiuni pentru mai multe informații despre personalizarea comenzilor pentru aceste locații.
Tipuri de comenzi
- Comanda. Buton standard. Efectuează o acțiune când este selectat. Poate fi și imbricat în grupuri din meniuri verticale și în butoane de separare. Rețineți că acestea erau numite butoane flotante în comenzile clasice.
- Scapă jos. Creează un meniu unde puteți organiza comenzi în cadrul unui grup.
- Grup. Adaugă titluri la grupuri de comenzi imbricate în liste verticale și în butoane de separare.
- Buton de împărțire. Similar cu o listă verticală, dar are o comandă principală. Când este selectat butonul de separare, este executată acțiunea din comanda principală. Dacă este selectat chevronul de extindere, comanda principală nu va fi executată. În schimb, o listă se extinde pentru a afișa grupuri suplimentare, elemente derulante și comenzi.
Diferențele cheie între comenzile clasice și cele moderne
Comenzile clasice (cunoscute anterior ca panglică) nu erau personalizabile folosind cod redus. Cu codul, personalizarea comenzilor a fost dificilă, obositoare și predispusă la erori. Pentru a scala comanda la cod redus, precum și utilizați pagini personalizate pentru a converti aplicații proiectate pe bază de model și pânză, era vital să reinventăm și să reconstruim infrastructura de comandă.
Comanda modernă oferă multe capacități noi și este mult mai simplu de utilizat.
Capacitatea | Clasic | Modern |
---|---|---|
Acceptată la runtime într-o aplicație proiectată pe bază de model | Da | Da, în plus acceptă runtime Power Fx. |
Se particularizează cu | Editarea manuală XML în fișierele soluției sau folosind instrumente non-Microsoft. Operațiuni obligatorii de export și import de soluții care consumă mult timp. | Proiectantul de comenzi, precum și suportul API pentru Dataverse. |
Acceptă Power Fx. | No | Da. Pentru acțiuni și vizibilitate. |
Durata necesară pentru particularizare | Lentă, predispus la erori. | Rapidă |
Fiabilitate și performanță | Este ușor să faceți greșeli. Particularizare deficitară și lipsa delimitării afectează adesea performanța aplicației | Tratarea erorilor în linie previne greșelile. Power Fx optimizat pentru o mai bună performanță la runtime. |
Partajare | Securitate Dataverse standard pe bază de roluri. | Comenzile non-Power Fx folosesc securitatea Dataverse standard pe bază de roluri. Comenzile Power Fx necesită în prezent partajarea bibliotecii de componente de comenzi, precum și un rol de securitate adecvat. |
Comportamentele de management al ciclului de viață al soluțiilor și aplicațiilor (ALM). | Stratificarea soluției este inconsecventă și problematică, fără prezență în interfața soluției. Multe comportamente standard ale soluției nu sunt acceptate, cum ar fi corecțiile, segmentarea, upgrade-ul soluției, proprietățile gestionate și multe altele. | Stratificarea standard a soluției este gestionată central pentru mai multe tipuri de obiecte de soluție din Dataverse. Prezent în interfața soluției. Sunt acceptate toate comportamentele standard ale soluției. |
Localizare | Nestandard | Standardizat folosind traduceri de export și import pentru întreaga soluție. |
Model de date | Complex. Optimizat pentru panglicile clasice și conține multe proprietăți care nu mai sunt necesare. | Simplu, optimizat pentru barele de comandă din aplicațiile pe bază de model din ziua de astăzi. |
Utilizarea JavaScript | Da | Da. Acum mai simplu. Notă: același JavaScript poate fi folosit și pentru comenzile clasice, și pentru cele moderne. |
Particularizați comenzile predefinite | Da | Comenzile devin editabile în proiectantul de comenzi după ce sunt migrate la cadrul modern. |
Comenzi specifice aplicației | No | Da. Utilizarea proiectantului de comenzi moderne asigură faptul că acele comenzi sunt vizibile numai în aplicația selectată. |
Comenzi specifice tabelului, care se vor afișa în toate aplicațiile care conțin tabelul | Da | Da. Necesită modificarea appaction definiție în fișierul soluției. |
Comenzi globale care se afișează pentru toate tabelele și aplicațiile pentru locația specificată a barei de comenzi | Da | Da. Necesită modificarea appaction definiție în fișierul soluției. |
Creați butoane de separare, elemente flotante și grupuri | Da | Da |
Populați dinamic un element flotant cu cod | Da | Nu. Vă recomandăm să creați comenzi în mod declarativ. |
Particularizați comenzile pentru antetul aplicației globale | Da | No |
Particularizați comenzile pentru alte locații din bara de comenzi, mai puțin uzuale sau învechite | Da | No |
Rulați un flux modern sau un flux de lucru | Utilizarea JavaScript | Utilizarea JavaScript. Este permisă și într-o pagină particularizată. |
Comparație dintre regulile de vizibilitate clasice și cele moderne
Regulile de vizibilitate clasice aveau adesea o anumită regulă pentru fiecare scenariu. Cu Power Fx, o funcție declarativă înlocuiește multe reguli clasice. Și este mult mai simplu de utilizat.
Rețineți că regulile de vizibilitate clasice vor fi acceptate în curând și în comenzile moderne. Cu toate acestea, a fost nevoie de suport pentru regulile clasice pentru a migra în mod fiabil comenzile clasice la comanda modernă, iar personalizarea regulilor clasice în designerul de comenzi nu este acceptată. Vă recomandăm să utilizați de acum înainte Power Fx.
Caz de utilizare | Regulă clasică | Opțiuni clasice | Proprietate vizibilă din Power Fx |
---|---|---|---|
Afișați / ascundeți pe baza valorilor datelor | CustomRule | Utilizarea JavaScript | !IsBlank(Self.Selected.Item.Email) |
Afișați/ascundeți pe baza permisiunii pentru tabel | EntityPrivilegeRule | Mai multe | DataSourceInfo() |
Afișați/ascundeți pe baza permisiunii pentru înregistrare | RecordPrivilegeRule | Mai multe | RecordInfo() |
Faceți referire la contextul controlului pentru tabelele principale și cele asociate | EntityRule | PrimaryEntity. SelectedEntity | Self.Selected |
Faceți referire la contextul controlului | EntityRule | Formular. HomePageGrid. SubGridStandard. SubGridAssociated | Self.Selected |
Proprietăți ale metadatelor din tabel | EntityPropertyRule | DataSourceInfo() | |
Afișați/ascundeți în funcție de starea formularului. De exemplu, afișați pentru formularul de creare | FormStateRule | Creați. Existent. ReadOnly. Dezactivat. BulkEdit | Self.Selected.State = FormMode.New |
Arată când > 1 înregistrări sunt selectate într-o grilă | SelectionCountRule | CountRows(Self.Selected.Items) > 1 | |
Afișați/ascundeți pentru un tabel asociat dintr-o căutare polimorfă. De exemplu, verificați dacă acea căutare este un utilizator SAU o echipă | CustomRule | PrimaryEntityTypeCode | IsType(), AsType |
Faceți referire la proprietăților unui mediu (org.) | CustomRule | OrgName. OrgLcid. UserLcid | Nedisponibilă în prezent |
Întrebări frecvente
-
De ce văd mai multe comenzi în designer decât văd în aplicația mea?
- Există mai multe motive. Uneori există o logică de vizibilitate care ascunde comanda atunci când rulează aplicația. Alteori, aceste comenzi sunt injectate dinamic prin JavaScript personalizat în timpul rulării și nu sunt configurabile.
-
De ce văd comenzi duplicate în designer?
- Acesta a fost un model obișnuit folosit cu comenzile clasice. Ambele comenzi nu ar apărea în timpul de execuție, deoarece erau controlate de regulile de vizibilitate. Designerul de comenzi afișează toate comenzile, indiferent de regulile de vizibilitate ale acestora.
Consultați și
Personalizați bara de comenzi folosind designerul de comenzi
Gestionați comenzile în soluții
Comandă modernă limitări cunoscute