Märkus.
Juurdepääs sellele lehele nõuab autoriseerimist. Võite proovida sisse logida või kausta vahetada.
Juurdepääs sellele lehele nõuab autoriseerimist. Võite proovida kausta vahetada.
| Funktsioone | Kehtib järgmiste puhul |
|---|---|
|
Ettevõtjad Identifikaatorid |
|
|
ThisItem Enese Vanem |
|
Mõned need tehtemärgid sõltuvad autori keelest. Lisateavet keeletoe kohta lõuendirakendustes leiate jaotisest Globaalsed rakendused.
| Sümbol | Tüüp | Näide | Kirjeldus |
|---|---|---|---|
| "..." | Identifikaator | "Konto nimi" | Erimärke, sealhulgas tühikuid, sisaldavad identifikaatorid on ümbritsetud jutumärkidega |
| "..." | Teksti string | "Tere, maailm" | Tekstistringid on ümbritsetud jutumärkidega |
| $"..." | Stringide interpoleerimine | $"Kallis {FirstName}," | Tekstistringi manustatud valemid |
| . | Atribuudi valija |
Liugur1.Väärtus Color.Red Acceleration.X |
Ekstraktib tabelist, juhtelemendist, signaalist või loetelust atribuudi. Tagurpidi ühilduvuse jaoks, ! saab kasutada. |
|
. [keelest sõltuv] |
Kümnendkoha eraldaja | 1.23 | Eraldaja arvu terviku ja osade vahel. Märk sõltub keelest. |
| ( ) | Sulud |
Filter(T, A < 10) (1 + 2) * 3 |
Jõustab tähtsuse järjekorra ja rühmitab suuremas avaldises sisalduvad allavaldised |
| + | Aritmeetilised tehtemärgid | 1 + 2 | Liitmine |
| - | 2 - 1 | Lahutamine ja märk | |
| * | 2 * 3 | Korrutamine | |
| / | 2 / 3 | Jagamine (vt a funktsiooni Mod) | |
| ^ | 2 ^ 3 | Astendamine, võrdne funktsiooniga Power | |
| % | 20% | Protsent (võrdne "* 1/100") | |
| = | Võrdlustehted | Hind = 100 | Võrdne väärtusega |
| > | Hind > 100 | Suurem kui | |
| >= | Hind > = 100 | Suurem kui või võrdub | |
| < | Hind < 100 | Väiksem | |
| <= | Hind < = 100 | Väiksem kui või võrdub | |
| <> | Hind <> 100 | Ei võrdu | |
| & | Stringi ühendamise tehtemärk | "tere" & " & "maailm" | Mitu stringi tunduvad pidevana |
| &või ja | Loogika tehtemärgid |
Hind < 100 && Slider1.Väärtus = 20 või Price < 100 And Slider1.Value = 20 |
Loogiline konjuktsioon, mis on võrdne funktsiooniga And |
| || või või | Hind < 100 || Slider1.Value = 20 või Price < 100 Või Slider1.Value = 20 | Loogiline disjunktsioon, mis on võrdne funktsiooniga Or | |
| ! või Not | ! (Hind < 100) või mitte (hind < 100) | Loogiline eitus, mis on võrdne funktsiooniga Not | |
| täpne | Liikmesuse operaatorid | Galerii1.Valitud täpnein SavedItems | Kuuluvad kogumisse või tabelisse |
| täpne | "Windows" täpne "Akende kuvamiseks Windowsi operatsioonisüsteemis..." | Alamstringi test (tõusutundlik) | |
| aastal | Galerii1.Valitud rakenduses SavedItems | Kuuluvad kogumisse või tabelisse | |
| aastal | "The" in "Klaviatuur ja monitor..." | Alamstringi test (pole tõusutundlik) | |
| @ | Täpsustuse tehtemärk | MyTable[@fieldname] | Välja ühtestamine |
| @ | [@MyVariable] | Globaalne ühtestamine | |
|
, [keelest sõltuv] |
Loendi eraldaja |
kui( x < 10, "madal", "hea" ) { X: 12, Y: 32 } [ 1, 2, 3 ] |
Eraldab: See märk sõltub keelest. |
|
; [keelest sõltuv] |
Valemi aheldamine | Kogu(T, A); Navigeeri(S1, "") | Eraldage käitumise atribuutides funktsioonide kutsumised. Aheldamise tehtemärk sõltub keelest. |
| Nagu | Operaatorina | AllCustomers kui klient | Alistab galeriides ja kirje ulatuse funktsioonides üksuses ThisItem ja ThisRecord. Nagu on kasulik parema, konkreetse nime pakkumiseks ja on eriti oluline pesastatud stsenaariumides. |
| Enese | Iseoperaator | Self.Fill | Juurdepääs praeguse juhtelemendi atribuutidele |
| ema | ema operaator | Vanem.Täitke | Juurdepääs juhtelemendi ümbrise atribuutidele |
| ThisItem | Tehtemärk ThisItem | ThisItem.FirstName | Juurdepääs galerii või vormi juhtelemendi väljadele |
| ThisRecord | ThisRecord operaator | ThisRecord.FirstName | Ligipääs täielikule kirjele ja kirje üksikutele väljadele ForAll, Sum, With ja muude kirje ulatusega seotud funktsioonide raames. Saab alistada tehtemärgiga Kui. |
Märkus.
@ tehtemärki saab kasutada ka kirje objekti tüübi valideerimiseks andmeallikas. Näiteks Collect(coll,Account@{'Account Number': 1111})
Tehtemärgid in ja exactin
Kasutage tehtemärke in ja exactin, et leida andmeallikas soovitud string, näiteks kogu või imporditud tabel. Tehtemärk in tuvastab vasted sõltumata juhtumist ja tehtemärk exactin tuvastab vasted ainult kui need on samade suurtähtedega. Vaatame näidet.
Looge või importige kogum nimega Varud ja kuvage see galeriis, nagu esimene protseduur jaotises Piltide ja teksti kuvamine galeriis kirjeldab.
Määrake juhtelemendi galerii atribuut Üksused järgmisele valemile:
Filter(varud, "E" tootenimes)Galerii kuvab kõik tooted peale Callisto, kuna selle toote nimi on ainus, mis ei sisalda teie määratud tähte.
Muutke juhtelemendi galerii atribuut Üksused järgmisele valemile:
Filter(Inventar, "E" täpne tooteNimi)Galerii näitab ainult Euroopat, kuna ainult selle nimi sisaldab tähte, mille määratlesite juhtumis, mille määratlesite.
ThisItem, ThisRecord ja As kui tehtemärgid
Mõned juhtelemendid ja funktsioonid rakendavad valemeid tabeli üksikkirjetele. Valemis üksikkirjele viitamiseks kasutage üht järgmistest võimalustest.
| Operaator | Kehtib järgmiste puhul | Kirjeldus |
|---|---|---|
| ThisItem |
Galerii juhtelement Vormi juhtelemendi redigeerimine Vormi juhtelemendi kuvamine |
Praeguse kirje vaikenimi Galerii või vormi juhtelemendis. |
| ThisRecord | ForAll, Filter , With, Sum ja muud kirje ulatuse funktsioonid | Praeguse kirje vaikenimi funktsioonis ForAll ja muudes kirje ulatuse funktsioonides. |
| Nimena |
Galerii juhtelement ForAll, Filter , With, Sum ja muud kirje ulatuse funktsioonid |
Määratleb praeguse kirje nime, asendades üksuse ThisItem või ThisRecord vaikesätte. Kasutage funktsiooni Kui, et muuta valemid lihtsamini mõistetavaks ja lahendada pesastamisel ebaselgusi. |
Tehtemärk ThisItem
Näiteks järgmises galerii juhtelemendis, on atribuut Üksus väärtuseks seatud Töötajad andmeallikas (nt Töötajad tabel mis sisaldab Northwind Traders näidet):
Employees
Galerii esimene üksus on mall, mida kasutatakse iga töötaja jaoks. Mallis kasutab pildi valem praegusele üksusele viitamiseks funktsiooni ThisItem:
ThisItem.Picture
Funktsiooni ThisItem kasutab ka nime valem:
ThisItem.'First Name' & " " & ThisItem.'Last Name'
ThisRecord tehtemärk
Seda kirjet kasutatakse funktsioonides, millel on kirje ulatus. Näiteks saame kasutada funktsiooni Filter oma galerii suvandis Üksused, et kuvada vaid tähega M algavad eesnimed:
Filter( Employees, StartsWith( ThisRecord.Employee.'First Name', "M" ) )
ThisRecord on valikuline ja eeldatav, kasutades välju otse, näiteks sel juhul oleksime võinud kirjutada:
Filter( Employees, StartsWith( 'First Name', "M" ) )
Kuigi see on valikuline, võib ThisRecord muuta valemid lihtsamini mõistetavaks ning selle kasutamine võib osutuda vajalikuks ebaselgetest olukordades, kus välja nimi võib olla ka seose nimi. ThisRecord on valikuline, samas kui ThisItem on alati nõutav.
Kasutage funktsiooni ThisRecord, et viidata kogu kirjele funktsioonidega Patch, Collect ja muude kirje ulatuse funktsioonidega. Näiteks järgmine valem määrab kõigi passiivsete töötajate oleku aktiivseks.
With( { InactiveEmployees: Filter( Employees, Status = 'Status (Employees)'.Inactive ) },
ForAll( InactiveEmployees,
Patch( Employees, ThisRecord, { Status: 'Status (Employees)'.Active } ) ) )
Kui tehtemärk
Kasutage tehtemärki Kui, et nimetada galerii kirje või kirje ulatuse funktsioon, alistades vaikimisi sätte ThisItem või ThisRecord. Kirjele nime andmine võib muuta teie valemid lihtsamini mõistetavaks ning pesastatud olukordades võib see olla vajalik muudesse ulatustesse jäävatele kirjetele ligi pääseda.
Näiteks saate muuta meie galerii suvandit Üksused, et kasutada tehtemärki Kui selleks, et teha kindlaks, kas me töötame töötajaga.
Employees As Employee
Pildi ja nime valemeid kohandatakse, et kasutada praeguse kirje jaoks antud nime.
Employee.Picture
Employee.'First Name' & " " & Employee.'Last Name'
Nagu saab kasutada ka kirje ulatuse funktsioonidega, et asendada vaikenimi ThisRecord. Me saame seda rakendada eelmisele näitele, et selgitada kirjet, millega töötame:
With( { InactiveEmployees: Filter( Employees, Status = 'Status (Employees)'.Inactive ) },
ForAll( InactiveEmployees As Employee,
Patch( Employees, Employee, { Status: 'Status (Employees)'.Active } ) ) )
Galeriide ja kirje ulatuse funktsioonide pesastamisel viitavad ThisItem ja ThisRecord alati kõige sisemisele ulatusele, jättes väliste ulatuste kirjed kättesaamatuks. Kõikide kirjete kättesaadavaks muutmiseks kasutage tehtemärki Kui, andes igaühele kordumatu nime.
Näiteks see valem moodustab tekstistringina malelauamustri, pesastades pesastades kaks ForAll funktsiooni.
Concat(
ForAll( Sequence(8) As Rank,
Concat(
ForAll( Sequence(8) As File,
If( Mod(Rank.Value + File.Value, 2) = 1, " X ", " . " )
),
Value
) & Char(10)
),
Value
)
Juhtelemendi Silt atribuudi Tekst määramine antud valemile kuvatakse järgmiselt:
Räägime lahti, mis siin toimub.
- Alustame sellest, et itereerime funktsioonist Sequence kaheksast nummerdatud kirjest koosneva nimetu tabeli. See tsükkel kehtib laua iga rea jaoks, mida kutsutakse tavaliselt nimega Järk, seega anname talle vastava nime.
- Iga rea kohta itereerime veel ühe kaheksast veerust koosneva nimetu tabeli ning anname talle ühtse nime Fail.
- Kui Rank.Value + File.Value on paaritu arv, siis märgitakse ruutu X, vastasel juhul aga täpp. See valem viitab tänu tehtemärgi Kui kasutamisele mõlemale ForAll tsüklile.
- Concatit kasutatakse kaks korda, kõigepealt veergude ja seejärel ridade kokkupanekuks, kusjuures Char(10) visatakse sisse uue rea loomiseks.
Sarnane näide on ForAll funktsioonide asemel ka pesastatud Galerii juhtelementidega. Alustame suvandi Järk vertikaalselst galeriist. Antud galerii juhtelemendi Üksused valem on järgmine.
Sequence(8) as Rank
Asetame galeriisse suvandi Fail horisontaalse galerii, mis kopeeritakse iga Järgu jaoks järgmise Üksused atribuudiga.
Sequence(8) as File
Lõpetuseks lisame galeriisse juhtelemendi Silt, mis kopeeritakse iga Faili ja iga Järgu jaoks. Määrame selle täitma kogu ruumi ning kasutame suvandit Täida, et anda järgmise valemi abil värv.
If( Mod( Rank.Value + File.Value, 2 ) = 1, Green, Beige )
Tehtemärgid Self ja Parent
Valemis on juhtelemendile ja selle atribuutidele viitamiseks kolm võimalust.
| Meetod | Kirjeldus |
|---|---|
| Juhtelemendi nime kaudu | Igale juhtelemendile on võimalik viidata selle nime kaudu kogu rakenduses. Näiteks Label1.Fill viitab täiteatribuudile, mis kuulub juhtelemendile, mille nimi on Label1. |
| Iseoperaator | Sageli on otstarbekas viidata valemi kirjutamisel sama juhtelemendi mõnele muule atribuudile. Selle asemel, et kasutada absoluutset nimeviidet, on hõlpsam ja teisaldatavam kasutada suhtelist viidet iseendale (self). Tehtemärk Self annab lihtsasti juurdepääsu praegusele juhtelemendile. Näiteks viitab Self.Fill praeguse juhtelemendi täitevärvile. |
| ema operaator | Mõned juhtelemendid majutavad muid juhtelemente, sealhulgas näiteks juhtelemendid Screen ja Gallery. Endas juhtelemente majutavat juhtelementi kutsutakse ülem. Nii nagu tehtemärk Self, pakub ka tehtemärk Parent võimalust viidata suhteliselt konteineri juhtelemendile. Näiteks viitab Parent.Fill täiteatribuudile, mis kuulub juhtelemendile, mis on praeguse juhtelemendi konteiner. |
Ise ja ema on operaatorid, mitte juhtseadiste omadused. Viiteid Parent.Parent, Self.Parent või Parent.Self toetata.
Identifikaatori nimed
Muutujate, andmeallikate, veergude ja muude objektide nimed võivad sisaldada Unicode’i.
Kasutage tühikut või muud erimärki sisaldava nime ümber ühekordseid jutumärke.
Kasutage kahte ühekordset jutumärki koos, et tähistada ühte ühekordset jutumärki nimes. Erimärke mitte sisaldavad nimed ei vaja ühekordseid jutumärke.
Siin on mõned näited veergude nimedest, mis võivad tabelis esineda, ja kuidas nad on valemites esindatud:
| Veeru nimi andmebaasis | Viide veerule valemis |
|---|---|
| SimpleName | SimpleName |
| NameWith123Numbers | NameWith123Numbers |
| Tühikutega nimi | 'Name with spaces' |
| Kahekordne jutumärkidega nimi | 'Name with "double" quotes' |
| Ühe jutumärgiga nimi | 'Name with ''single'' quotes' |
| @-märgiga nimi | 'Name with an @ at sign' |
Kahekordseid jutumärke kasutatakse tekstistringi määramiseks.
Kuvatavad nimed ja loogilised nimed
Teatud andmeallikates (nt SharePoint ja Microsoft Dataverse) on kaks erinevat nime, mis viitavad samale tabelile või andmete veerule.
Loogiline nimi – nimi, mis on garanteeritult kordumatu, ei muutu pärast loomist, ei luba tavaliselt tühikuid ega muid erimärke ega ole lokaliseeritud erinevatesse keeltesse. Selle tulemusel võib nimi olla arusaamatu. Neid nimesid kasutavad professionaalsed arendajad. Näiteks cra3a_customfield. Sellele nimele võidakse viidata ka kui skeemi nimi või lihtsalt nimi.
Kuvatav nimi – nimi, mis on kasutajasõbralik ja mõeldud lõppkasutajatele vaatamiseks. See nimi ei pruugi olla kordumatu, võib aja jooksul muutuda, võib sisaldada tühikuid ja mis tahes Unicode’i märki ning võib olla lokaliseeritud erinevates keeltes. Vastavalt ülaltoodud näitele võib kuvanimi olla Kohandatud väli, kus sõnade vahel on tühik.
Kuna kuvatavaid nimesid on hõlpsam mõista, pakub lõuendirakendus neid valikuna ja ei soovita loogilisi nimesid. Kuigi loogilisi nimesid ei soovitada kasutada, siis saab seda siiski teha, kui need on tipitud kaudselt.
Näiteks, kujutage, et olete lisanud Kohandatud välja tabelisse rakenduses Dataverse. Süsteem määrab teile loogilise nime, mida saate muuta ainult välja loomisel. Tulemus näeks välja sarnane järgnevale:
Lubades viitamise kontode väljale, soovitatakse kasutada suvandit Kohandatud väli, kuna see on kuvatav nimi. Kuna see nimi hõlmab tühikut, tuleb kasutada üksikjutumärke:
Pärast soovituse valimist kuvatakse valemiribal 'Kohandatud väli' ja hangitakse andmed:
Kuigi seda ei soovitata, võiksime kasutada selle välja jaoks ka loogilist nime. Selle tulemuseks on samade andmete toomine. Üksikud jutumärgid pole vajalikud, kuna see nimi ei sisalda tühikuid ega erimärke:
Taustal säilitatakse vastendamine valemites nähtavate kuva nimede ja nende aluseks olevate loogiliste nimede vahel. Kuna andmeallikaga suhtlemiseks tuleb kasutada loogilisi nimesid, kasutatakse seda vastendamist automaatselt praeguselt kuvatavalt nimelt loogilisele nimele teisendamiseks ja seda nähakse võrguliikluses. Vastendust kasutatakse ka loogilistele nimedele tagasi teisendamiseks, et lülituda ümber uutele kuvatavatele nimedele, näiteks kui kuvatav nimi muutub muukeelne tegija muudab rakendust.
Märkus.
Loogilisi nimesid rakenduse erinevate keskkondade vahel liigutamisel ei tõlgita. Dataverse süsteemitabelite ja väljade nimede puhul ei tohiks see probleem olla, kuna loogikanimed on erinevates keskkondades ühtsed. Kuid kõik kohandatud väljad, näiteks cra3a_customfield selles näites, võivad omada erinevat keskkonna eesliidet (antud juhul cra3a). Kuvatavad nimed on eelistatud, kuna neid saab vastendada uue keskkonna kuvamise nimedega.
Nime ühtestamine
Kuna kuvatavad nimed pole kordumatud, võib sama kuvatav nimi olla samas tabelis rohkem kui üks kord. Kui see juhtub, lisatakse loogiline nimi kuvatava nime lõppu sulgudes ühe vastuolulise nime jaoks. Tuginedes eelmisele näitele, kui sama kuvatava nimega Kohandatud väli oleks teine väli, mille loogiline nimi on cra3a_customfieldalt, siis näitaksid soovitused järgmist:
Nimestringid lisatakse muudes nimede vastuolude olukordades nagu näitekss tabeli nimedes, valikutes ja muudes Dataverse üksustes.
Ühtestamise tehtemärk
Mõned funktsioonid loovad iga kirje töötlemise ajal tabeli väljade hindamiseks kirjete ulatused, nagu Filter, AddColumns ja Sum. Kirje ulatusega lisatud väljade nimed tühistavad samad nimed mujal rakenduses. Kui nii juhtub, saate siiski pääseda juurde väärtustele, mis jäävad väljapoole ühtestamise tehtemärgi @kirje ulatust.
- Pesastatud kirje ulatustest väärtustele juurdepääsuks kasutage tehtemärki @ koos tabeli nimega, mida kasutatakse selle musti kasutamisel.
Tabel[@FieldName] - Globaalsetele väärtustele (nt andmeallikad, kogumid ja konteksti muutujad) juurdepääsuks kasutage mustrit [@ObjectName] (ilma tabeli määramiseta).
Lisateavet ja näiteid vaadake kirjete ulatustest.