Opsezi za savremene komande

Komande imaju jedan od tri opsega. Opseg određuje da li će komanda (schemaname = appaction) biti prikazana za tabelu unutar jedne aplikacije, za tabelu u svim aplikacijama ili za sve tabele i sve aplikacije.

Komanda mora biti povezana sa lokacijom komandne trake kao što je glavna mreža ili glavni obrazac, bez obzira na opseg. Zbog toga, promena opsega neće dovesti komandu na različite lokacije komandne trake kao što su glavna mreža i glavni obrazac.

  • Aplikacija Ovo je najuži opseg i podrazumevano ponašanje prilikom kreiranja ili uređivanja komandi pomoću savremenog dizajnera komandi. Dizajner komandi se otvara u kontekstu lokacije aplikacije zasnovane na modelu, tabele i komandne trake.
  • Tabela Poznato i kao opseg entiteta. Povezano sa određenom lokacijom tabele i komandne trake. Nije povezan ni sa jednom određenom aplikacijom. Stoga će se komande specifične za tabelu prikazivati u svim aplikacijama koje koriste tu tabelu. Na primer, komanda opsega tabele za lokaciju tabele poslovnog kontakta i glavnog obrasca biće prisutna u svim aplikacijama prilikom prikazivanja glavnog obrasca zapisa poslovnog kontakta.
  • Globalni Ovo je najširi opseg. Komande globalnog opsega su povezane samo sa lokacijom komandne trake, a ne sa aplikacijom ili tabelom. Na primer, komanda globalnog opsega za lokaciju tabele poslovnog kontakta i glavnog obrasca biće prisutna u svim aplikacijama u okruženju prilikom prikazivanja glavnog obrasca svake tabele.

Važno

Komande koje koriste Power Fx za radnju i/ili vidljivost trenutno ne mogu da se konvertuju u tabelu ili globalni opseg.

Kada su komande ugnežđene u padajuće liste, grupe i razdeljenu dugmad, sve moraju biti postavljene na isti opseg.

Ako se komanda globalnog opsega ili opsega tabele uređuje unutar savremenog dizajnera komandi, kopija (instanca) se kreira sa opsegom aplikacije i povezuje sa originalnom komandom. Na primer, uređivanje komande globalnog opsega u dizajneru komandi zamenjuje originalnu komandu globalnog opsega, ali samo za određenu aplikaciju i tabelu izabranu prilikom otvaranja dizajnera komandi. Sve ostale aplikacije i tabele će prikazivati originalnu komandu. Kopija (instanca) sada ima sopstveni životni ciklus. Promene originalne komande globalnog opsega neće uticati na novu instancu opsega aplikacije i obrnuto.

Izmena komandi opsega tabele i globalnog opsega

Više uskih opsega može da izmeni komandu šireg opsega na svakom nivou. Najuži obim pobeđuje.

  • Komanda opsega tabele (entiteta) izmenjuje komande globalnog opsega. Možete da definišete komandu koja će biti ista u svim tabelama, ali da izmenite ponašanje samo za određene tabele.
  • Komanda opsega aplikacije izmenjuje sve druge opsege, ali samo za određenu aplikaciju i tabelu.

Kako se kreira komanda opsega tabele

  1. Kreirajte jednu ili više komandi u rešenju pomoću dizajnera komandi. Druga mogućnost je da kreirate zasebno rešenje i izaberete opciju Dodaj postojeće > Tabela.

  2. Odaberite stavku Izaberite objekte, a zatim dodajte željene komande.

  3. Izaberite Izvoz da biste izvezli rešenje.

    Izvoz rešenja.

  4. Ako ste nedavno napravili promene koje još nisu objavljene, izaberite opciju Objavi. Zatim izaberite Pokreni da biste proverili da li rešenje ima nekih problema ili zavisnosti, a zatim kliknite na dugme Dalje.

  5. Izaberite opciju Nekompletno, a zatim izaberite Izvezi.

  6. U dijalogu Preuzimanje, izaberite Sačuvaj, a u dijalogu Preuzimanje završeno izaberite Otvori fasciklu.

  7. Kliknite desnim tasterom miša da biste izabrali komprimovanu .zip datoteku koju ste preuzeli, a zatim izaberite Raspakuj sve.

  8. Izaberite lokaciju na koju ćete raspakovati datoteke, a zatim izaberite Raspakuj.

  9. Otvorite fasciklu u izdvojenim datotekama, otvorite datoteku appaction.xml i pronađite željenu komandu (appaction).

  10. Izbrišite čvor appmoduleid iz xml datoteke.

     <appmoduleid>
       <uniquename>demo_DemoFestApp</uniquename>
     </appmoduleid>
    
  11. Promenite vrednost jedinstvenog imena za appaction. Promena bilo kog od poslednjih znakova je dovoljna, na neki od 1 do 2 ili možete da koristite opisnije konvencije o imenovanju ako želite.

Primer XML datoteke.

   <appaction uniquename="crdff_NewCommand!a078463b5d7c473d8965f0f80469f412!crdff_CustomApp!crdff_entity1!1">
  <buttonlabeltext default="Show Alert">
    <label description="Show Alert" languagecode="1033" />
   </buttonlabeltext>
   <buttonsequencepriority>10.0000000000</buttonsequencepriority>
   <context>1</context>
   <contextentity>
    <logicalname>crdff_entity1</logicalname>
   </contextentity>
   <fonticon>AALinkedInLogo</fonticon>
   <contextvalue>crdff_entity1</contextvalue>
   <hidden>0</hidden>
   <iscustomizable>1</iscustomizable>
   <location>1</location>
   <name>EntityScoped!a078463b5d7c473d8965f0f80469f412</name>
   <onclickeventjavascriptfunctionname>ShowAppAlert</onclickeventjavascriptfunctionname>
   <onclickeventjavascriptparameters>[]</onclickeventjavascriptparameters>
   <onclickeventjavascriptwebresourceid>
    <webresourceid>ac21ad24-3c11-ef11-b6u7-000d3a1d942c</webresourceid>
   </onclickeventjavascriptwebresourceid>
   <onclickeventtype>2</onclickeventtype>
   <statecode>0</statecode>
   <statuscode>1</statuscode>
   <type>0</type>
   </appaction>

Kada uredite i sačuvate datoteku appaction.xml, zapakujte rešenje u istom formatu u kojem je izvezeno. Zatim ponovo uvezite rešenje u okruženje i testirajte ponašanje.

Kako se kreira komanda globalnog opsega

  1. Sledite iste gorenavedene korake da biste uredili datoteku appaction.xml.

  2. Izbrišite čvor appmoduleid iz xml datoteke:

     <appmoduleid>
       <uniquename>demo_DemoFestApp</uniquename>
     </appmoduleid>
    
  3. Promenite vrednost jedinstvenog imena za appaction. Promena bilo kog od poslednjih znakova je dovoljna, na neki od 1 do 2 ili možete da koristite opisnije konvencije o imenovanju ako želite.

  4. Izbrišite čvorove contextentity i contextvalue iz xml datoteke:

    <contextentity>
     <logicalname>account</logicalname>
    </contextentity>
    <contextvalue>account</contextvalue>
    
  5. Promenite vrednost context sa 1 na 0.

    <appaction uniquename="crdff_NewCommand1!8fe72a85-1f84-431e-ac56-854f1bfadc4e!1">
    <buttonlabeltext default="Show Alert">
    <label description="Show Alert" languagecode="1033" />
    </buttonlabeltext>
    <buttonsequencepriority>10.0000000000</buttonsequencepriority>
    <context>0</context>
    <hidden>0</hidden>
    <iscustomizable>1</iscustomizable>
    <fonticon>AALinkedInLogo</fonticon>
    <location>1</location>
    <name>EntityScoped!a078463b5d7c473d8965f0f80469f412</name>
    <onclickeventjavascriptfunctionname>ShowGlobalAlert</onclickeventjavascriptfunctionname>
    <onclickeventjavascriptparameters>[]</onclickeventjavascriptparameters>
    <onclickeventjavascriptwebresourceid>
     <webresourceid>ac21ad24-3c01-ec11-b6e7-000d3a1d942c</webresourceid>
    </onclickeventjavascriptwebresourceid>
    <onclickeventtype>2</onclickeventtype>
    <statecode>0</statecode>
    <statuscode>1</statuscode>
    <type>0</type>
    </appaction>
    

Kada uredite i sačuvate datoteku appaction.xml, zapakujte rešenje u istom formatu u kojem je izvezeno. Zatim ponovo uvezite rešenje u okruženje i testirajte ponašanje.

Kako da izmenite komandu globalnog opsega komandom opsega tabele

Ovo je primer situacije kada želite da komanda globalnog opsega bude ista svuda osim u određenoj tabeli.

  • Radnja opsega entiteta biće vidljiva na mrežama crdff_entity1 u svim aplikacijama osim u crdff_CustomApp.
  • Radnja globalnog opsega biće vidljiva na svim mrežama entiteta osim crdff_entity1.

Napomena

Da biste izmenili komande globalnog opsega ili opsega tabele komandom opsega aplikacije, jednostavno uredite komandu pomoću dizajnera komandi.

Da biste izmenili komandu globalnog opsega komandom opsega tabele, izmenite datoteke appactions.xml tako da imaju isti XML <name> .

Koraci za izmenu

  1. Sledite korake u opciji Kako da kreirate komandu globalnog opsega, ali kreirajte dve komande pomoću dizajnera komandi.

  2. Kao što je opisano u koracima, izvezite rešenje i uredite datoteke aplikacija appactions.xml.

  3. Nastavite da pratite korake da biste kreirali jednu komandu globalnog opsega i jednu komandu opsega entiteta.

  4. Postavite svojstvo name tako da bude potpuno isto i za komande globalnog opsega i komande opsega entiteta.

Primer XML datoteke komandi globalnog opsega

<appaction uniquename="crdff_NewCommand1!8fe72a85-1f84-431e-ac56-854f1bfadc4e!1">
<buttonlabeltext default="Show Alert">
 <label description="Show Alert" languagecode="1033" />
</buttonlabeltext>
<buttonsequencepriority>10.0000000000</buttonsequencepriority>
<context>0</context>
<hidden>0</hidden>
<iscustomizable>1</iscustomizable>
<fonticon>AALinkedInLogo</fonticon>
<location>1</location>
<name>EntityScoped!a078463b5d7c473d8965f0f80469f412</name>
<onclickeventjavascriptfunctionname>ShowGlobalAlert</onclickeventjavascriptfunctionname>
<onclickeventjavascriptparameters>[]</onclickeventjavascriptparameters>
<onclickeventjavascriptwebresourceid>
 <webresourceid>ac21ad24-3c01-ec11-b6e7-000d3a1d942c</webresourceid>
</onclickeventjavascriptwebresourceid>
<onclickeventtype>2</onclickeventtype>
<statecode>0</statecode>
<statuscode>1</statuscode>
<type>0</type>
</appaction>

Primer XML datoteke komandi opsega tabele

<appaction uniquename="crdff_NewCommand!a078463b5d7c473d8965f0f80469f412!crdff_entity1!1">
<buttonlabeltext default="Show Alert">
<label description="Show Alert" languagecode="1033" />
</buttonlabeltext>
<buttonsequencepriority>10.0000000000</buttonsequencepriority>
<context>1</context>
<contextentity>
<logicalname>crdff_entity1</logicalname>
</contextentity>
<fonticon>AALinkedInLogo</fonticon>
<contextvalue>crdff_entity1</contextvalue>
<hidden>0</hidden>
<iscustomizable>1</iscustomizable>
<location>1</location>
<name>EntityScoped!a078463b5d7c473d8965f0f80469f412</name>
<onclickeventjavascriptfunctionname>ShowEntityAlert</onclickeventjavascriptfunctionname>
<onclickeventjavascriptparameters>[]</onclickeventjavascriptparameters>
<onclickeventjavascriptwebresourceid>
<webresourceid>ac21ad24-3c01-ec11-b6e7-000d3a1d942c</webresourceid>
</onclickeventjavascriptwebresourceid>
<onclickeventtype>2</onclickeventtype>
<statecode>0</statecode>
<statuscode>1</statuscode>
<type>0</type>
</appaction>

Napomena

Možete li nam reći o svojim željenim postavkama jezika u dokumentaciji? Ispunite kratku anketu. (imajte na umu da je ova anketa na engleskom jeziku)

Anketa će trajati oko sedam minuta. Ne prikupljaju se lični podaci (izjava o privatnosti).