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 redau aplicații și acțiunile rezultate, care sunt efectuate atunci când este selectat un buton. 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șare. 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, poate 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
Grilă 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.
Formular 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 va apărea în diferite zone ale formularului.
Vizualizare 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 comenzi de mai jos, editați bara de comenzi pentru tabelul de contacte, apoi vizualizarea subgrilă.
Vizualizare asociată. Această bară de comenzi este afișată pe formularul unui tabel principal la vizualizarea datelor corelate din acest tabel. De exemplu, din formularul principal a unei înregistrări de cont selectați fila Corelat apoi selectați un tabel asociat, cum ar fi contactele.
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 de pe bara de comandă care sunt particularizate mai rar nu sunt acceptate în proiectantul de comenzi. Consultați secțiunile Bara de comenzi globale și alte panglici pentru mai multe informații despre particularizarea comenzilor pentru aceste locații.
Tipuri de comenzi
- Comandă. 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.
- Listă verticală. 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 separare. 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ă se selectează pictograma cu ghilimele unghiulare, pentru extindere, comanda principală nu va fi executată. În schimb, se va extinde o listă care va afișa grupuri suplimentare, elemente flotante și comenzi.
Diferențele cheie între comenzile clasice și cele moderne
Comenzile clasice (cunoscute anterior sub numele de 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ă a codului XML în fișierele soluției sau folosind instrumente de la terți. 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. |
Comportamentul soluției și al 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 | Non-standard | Standardizat folosind traduceri pentru 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 definiției appaction din fișierul soluției. |
Comenzi globale care se vor afișa pentru toate tabelele și aplicațiile pentru locația specificată din bara de comenzi | Da | Da. Necesită modificarea definiției appaction din 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. Însă era necesar suportul pentru regulile clasice, pentru migrarea fiabilă a comenzilor clasice la comenzi moderne, iar particularizarea regulilor clasice nu este acceptată în proiectantul de comenzi. 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 în funcție de valorile datelor | CustomRule | Utilizați 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 |
Afișați când se selectează mai mult de 1 înregistrare î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 proiectant decât văd în aplicația mea?
- Există mai multe motive. Uneori există o logică de vizibilitate care va ascunde comanda atunci când rulați aplicația. Alteori aceste comenzi sunt injectate dinamic prin JavaScript personalizat în timpul rulării și nu sunt configurabile.
- De ce văd comenzi duplicat în proiectant?
- Acesta a fost un model obișnuit folosit cu comenzile clasice. Ambele comenzi nu ar apărea în timp de execuție, deoarece erau controlate de reguli de vizibilitate. Proiectantul comenzilor va afișa toate comenzile, indiferent de regulile lor de vizibilitate.
Consultați și
Particularizați bara de comenzi utilizând proiectantul de comenzi
Gestionarea comenzilor în soluții
Limitări moderne de comandă cunoscute