Notă
Accesul la această pagină necesită autorizare. Puteți încerca să vă conectați sau să modificați directoarele.
Accesul la această pagină necesită autorizare. Puteți încerca să modificați directoarele.
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 un nivel general, personalizarea comenzilor se încadrează în trei categorii. Există diverse capabilități în fiecare categorie și sunt acoperite mai detaliat în documentația modernă de comandă:
- 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 care rulează atunci când un utilizator selectează 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 grilei principale, selectează tabelul dorit din designerul modern al aplicației, apoi editează bara de comenzi și alege locația principală a grilei. Primele cinci comenzi, determinate de ordine, sunt de asemenea afișate ca acțiuni rapide când joci în aplicație.
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. Acestea erau numite flyout-uri în clasicul comenzilor.
- 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. Necesită operațiuni de export și import a soluțiilor care consumă mult timp. | Proiectantul de comenzi, precum și suportul API pentru Dataverse. |
| Acceptă Power Fx. | Nu | 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. Personalizarea slabă și lipsa scoping-ului 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. Același JavaScript poate fi folosit atât pentru comenzi clasice, cât ș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 | Nu | Da. Utilizarea proiectantului de comenzi moderne asigură faptul că acele comenzi sunt vizibile numai în aplicația selectată. |
| Comenzi specifice tabelului care se afișează î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. Creează comenzi declarativ. |
| Particularizați comenzile pentru antetul aplicației globale | Da | Nu |
| Personalizează comenzile pentru alte locații ale barei de comenzi, neobișnuite sau învechite | Da | Nu. |
| 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.
Regulile clasice de vizibilitate sunt suportate ș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șează sau ascunde pe baza valorilor datelor | CustomRule | Utilizarea JavaScript | !IsBlank(Self.Selected.Item.Email) |
| Arată sau ascunde în funcție de permisiunea mesei | EntityPrivilegeRule | Mai multe | DataSourceInfo() |
| Arată sau ascunde în funcție de permisiunea de î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() | |
| Arată sau ascunde în funcție de starea formei. 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șează sau ascunde pentru un tabel înrudit într-o căutare polimorfă. De exemplu, verifică dacă căutarea 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.
Vedeți și
Personalizați bara de comenzi folosind designerul de comenzi
Gestionați comenzile în soluții
Comandă modernă limitări cunoscute