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.

Bara de comenzi

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.

    Bara de comandă pe grila principală

  • 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.

    Formular principal

  • 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 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.

    Vizualizare asociată

  • 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.

    Un exemplu de acțiune rapidă configurat pe masa de contact

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.

Tipuri de 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