Tipuri de date în Power Apps

Informațiile curg printr-o aplicație în valori mici, discrete, asemănătoare celulelor unei foi de calcul. De exemplu, datele dintr-un câmp Zi de naștere și un câmp Aniversare ar curge ambele ca o valoare Dată care include anul, luna și ziua. Aplicația știe să formateze aceste valori, să restricționeze introducerea la ceea ce este potrivit pentru fiecare și să partajeze valorile cu o bază de date. Zilele de naștere diferă față de aniversări pentru oameni, dar sistemul le gestionează exact în aceeași manieră. În acest caz, Dată este un exemplu de tip de date.

Acest articol oferă detalii pentru tipurile de date pe care le acceptă aplicațiile pânză. Când o aplicație se conectează la o sursă externă de date, fiecare tip de date din acea sursă este mapat la un tip de date pentru aplicații pânză.

Tip de date Descriere Exemple
Boolean O valoare adevărată sau falsă. Poate fi utilizată direct în funcții If, Filter și alte funcții fără o comparație. adevărat
Culoare O specificație de culoare, incluzând un canal alfa. Color.Red
ColorValue( "#102030" )
RGBA( 255, 128, 0, 0.5 )
Monedă O valoare de monedă care este stocată într-un număr cu virgulă mobilă. Valorile monedă sunt aceleași cu valorile număr cu opțiuni de formatare a monedei. 123
4.56
Dată O dată fără o oră, în fusul orar al utilizatorului aplicației. Dată( 2019, 5, 16 )
DatăOră O dată cu o oră, în fusul orar al utilizatorului aplicației. DateTimeValue( "May 16, 2019 1:23:09 PM” )
GUID Un Identificator unic global. GUID()
GUID( "123e4567-e89b-12d3-a456-426655440000” )
Hyperlink Un șir de text care deține un hyperlink. "https://powerapps.microsoft.com”
Imagine Un șir de text Identificator de resurse universale (URI) pentru o imagine în .jpeg, .png, .svg, .gif sau alt format web comun de imagine. MyImage adăugat ca resursă pentru aplicație
"https://northwindtraders.com/logo.jpg”
"appres://blobmanager/7b12ffa2...”
Media Un șir de text URI la o înregistrare video sau audio. MyVideo adăugat ca resursă pentru aplicație
"https://northwindtraders.com/intro.mp4”
"appres://blobmanager/3ba411c...”
Număr Un număr cu virgulă mobilă. 123
-4,567
8,903e121
Alegere O alegere dintr-un set de opțiuni, susținute de un număr. Acest tip de date combină o etichetă de text localizabilă cu o valoare numerică. Eticheta apare în aplicație, iar valoarea numerică este stocată și utilizată pentru comparații. ThisItem.OrderStatus
Înregistrare O înregistrare a valorilor datelor. Acest tip de date compuse conține instanțe ale altor tipuri de date care sunt enumerate în acest subiect. Informații suplimentare: Lucrul cu tabele. { Companie: "Traders Northwind”,
Personal: 35,
NonProfit: fals }
Referință de înregistrare O referință la o înregistrare dintr-un tabel. Astfel de referințe sunt adesea utilizate cu căutări polimorfe. Informații suplimentare: Lucrul cu referințe. First(Accounts).Owner
Table Un tabel de înregistrări. Toate înregistrările trebuie să aibă aceleași nume pentru câmpurile lor cu aceleași tipuri de date, iar câmpurile omise sunt tratate ca necompletat. Acest tip de date compuse conține instanțe ale altor tipuri de date care sunt enumerate în acest subiect. Informații suplimentare: Lucrul cu tabele. Tabel( { Prenume: "Vladimir”,
Nume de familie: "Stoenescu” },
{ Prenume: "Constanța”,
Nume de familie: "Melinte” } )
Text Un șir de text Unicode. "Salut, lume”
Oră O dată fără o oră, în fusul orar al utilizatorului aplicației. Oră( 11, 23, 45 )
Două opțiuni O alegere dintr-un set de două opțiuni, susținute de o valoare booleană. Acest tip de date combină o etichetă de text localizabilă cu o valoare booleană. Eticheta apare în aplicație, iar valoarea booleană este stocată și utilizată pentru comparații. ThisItem.Taxable

Multe dintre aceste tipuri de date sunt similare și au aceeași reprezentare de bază, cum ar fi un câmp Hyperlink fiind tratat ca Text. Tipurile de date suplimentare oferă experiențe implicite mai bune în formulare și alte controale.

Necompletat

Toate tipurile de date pot avea o valoare necompletat (cu alte cuvinte, fără valoare). Termenul "nul” este adesea folosit în bazele de date pentru acest concept.

Utilizați funcția Blank cu funcția Set sau Patch pentru a seta o variabilă sau un câmp la necompletat. De exemplu, Set( x, Blank() ) elimină orice valoare din variabila globală x.

Test pentru o valoare necompletată utilizând funcția IsBlank. Înlocuiți valorile posibil necompletate cu valori non-necompletate utilizând funcția Coalesce.

Deoarece toate tipurile de date acceptă necompletat, tipurile de date Boolean și Două opțiuni au efectiv trei valori posibile.

Toate aceste patru tipuri de date se bazează pe un șir de text Unicode.

Text încorporat

Șirurile de text încorporate într-o formulă sunt incluse în ghilimele duble. Utilizați două ghilimele duble pentru a reprezenta un singur citat dublu în șirul de text. De exemplu, utilizând următoarea formulă în proprietatea OnSelect a unui control Button:

Notify( "Jane said ""Hello, World!""" )

Are ca rezultat un banner la apăsarea butonului, unde sunt omise primele și ultimele ghilimele duble (întrucât delimitează șirul de text) și citatele duble repetate în jurul valorii de Salut, lume! sunt înlocuite cu o singură ghilimea dublă:

notificare pop-up cu mesajul pe care l-a spus Crina, "Salut, lume.”

Se folosesc ghilimele simple pentru nume de identificare care conțin caractere speciale și nu au o semnificație specială într-un șir de text.

Interpolarea șirurilor

Utilizați interpolarea șirurilor pentru a încorpora formule într-un șir de text. Este adesea mai ușor să lucrați cu și să vizualizați rezultatul decât să utilizați Înlănţui funcția sau & operator.

Prefixați șirul de text cu semnul dolarului $ și anexați formula care trebuie încorporată cu bretele {}. Pentru a include o acoladă în șirul de text, utilizați acolade repetate: {{ sau }}. Interpolarea șirurilor poate fi utilizată oriunde poate fi folosit un șir de text standard.

De exemplu, luați în considerare această formulă cu variabile globale Merele setată la 3 și Banane setat la 4:

$"We have {Apples} apples, {Bananas} bananas, yielding {Apples+Bananas} fruit total." 

Această formulă returnează șirul de text Avem 3 mere, 4 banane, dând în total 7 fructe. Variabilele Merele și Banane sunt inserate în text înlocuind acoladele, împreună cu rezultatul formulei matematice Mere+banane. Spațiile și alte caractere din jurul acoladelor sunt păstrate așa cum sunt.

Formulele încorporate pot include orice funcții sau operatori. Tot ceea ce este nevoie este ca rezultatul formulei să poată fi constrâns la un șir de text. De exemplu, această formulă va fi inserată Poreclă dacă este furnizat sau Nume daca nu, intr-un salut:

$"Welcome {Coalesce( NickName, FirstName )}, it's great to meet you!" )

Dacă Poreclă este setată la „Joe”, apoi această formulă produce șirul de text Bun venit Joe, mă bucur să te cunosc!. Dar dacă Poreclă este gol și Nume este „Iosif”, atunci această formulă produce Dragă Joseph, mă bucur să te cunosc! In schimb.

Interpolarea șirurilor poate include șiruri de text standard în formula încorporată. De exemplu, dacă nici unul Poreclă nici Nume au fost furnizate, am putea încă să furnizăm "Prieten" ca înlocuitor:

$"Welcome {Coalesce( NickName, FirstName, "Friend" )}!"  

Interpolările șirurilor pot fi chiar imbricate. Luați în considerare acest exemplu unde Primul, ·, și Ultimul numele sunt combinate într-un salut. Chiar dacă una sau două dintre aceste valori sunt gol, numărul corect de spații va fi între părțile numelui. Dacă niciuna dintre părți nu este furnizată, interpolarea șirului interior se va prăbuși într-un șir gol și va fi înlocuită cu Se unesc funcția de „Prieten”.

$"Welcome {Coalesce( Trim( $"{First} {Middle} {Last}"}), "Friend" )}!"
Prenume Mijloc Ultima Rezultat
Ioan Qunicy Căprioară Welcome John Quincy Doe!
Ioan blank Căprioară Welcome John Doe!
blank blank Căprioară Welcome Doe!
blank blank blank Welcome Friend!

Linii noi

Șirurile de text încorporate pot conține linii noi. De exemplu, luați în considerare setarea Text proprietatea a Eticheta control la următoarele:

"Line 1
Line 2
Line 3" 

Formula de mai sus are ca rezultat trei linii afișate în controlul etichetei:

Control de șir de text și etichetă încorporat care arată trei linii cu linia 1, linia 2 și linia 3.

Liniile noi sunt, de asemenea, acceptate cu interpolarea șirurilor, după cum se arată mai jos:

$"Line {1}
Line {1+1}
Line {1+1+1}" 

Formula de mai sus are ca rezultat aceeași ieșire:

Formula de interpolare a șirurilor și controlul etichetei care arată trei linii cu Linia 1, Linia 2 și Linia 3.

Resurse imagine și media

Prin meniul Fișier, puteți adăuga fișiere imagine, video și audio ca resurse pentru aplicații. Numele fișierului importat devine numele resursei din aplicație. În această grafică, sigla Northwind Traders, denumită nwindlogo, a fost adăugată la o aplicație:

Resursă Northwind.

Pentru a utiliza această resursă într-o aplicație, specificați-o în proprietatea Imagine a unui control Imagine:

Imagine Northwind.

URI-uri pentru imagini și alte suporturi media

Puteți explora puțin mai adânc în ultimul exemplu, setând butonul proprietății Text a unui control Etichetă la nwindlogo. Eticheta arată un șir de text:

Text Northwind.

Aplicațiile proiectate pe pânză fac referire la fiecare imagine sau alt fișier media, fie că este în cloud sau adăugat ca o resursă de aplicație, printr-un șir de text URI.

De exemplu, proprietatea Imagine a unui control de imagine acceptă nu numai resursele aplicației, ci și linkuri către imagini de pe web, cum ar fi "https://northwindtraders.com/logo.jpg”. Proprietatea acceptă, de asemenea, imagini în linie care utilizează schema URI a datelor, ca în acest exemplu:

"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAFAQMAAACtnVQoAAAABlBMVEUAAAB0J3UMNU6VAAAAAXRSTlMAQObYZgAAABRJREFUCNdjUGJgCGVg6GgAkkA2AA8/AffqCEBsAAAAAElFTkSuQmCC"

Acest URI afișează o versiune redusă a două diamante violet:

Diamante duble.

Puteți afișa cea mai recentă imagine capturată într-un control Cameră dacă setați proprietatea Imagine unui control de imagine la proprietatea Fotografie a controlului camerei. Aplicația ține imaginea în memorie și proprietatea Fotografie a controlului camerei returnează o referință URI pentru imagine. De exemplu, puteți face o poză iar proprietatea Fotografie a camerei ar putea returna "appres://blobmanager/7b12ffa2ea4547e5b3812cb1c7b0a2a0/1”.

Utilizați un URI pentru a face referire la o imagine sau la un alt fișier media stocat într-o bază de date. În acest fel, aplicația nu preia datele reale până când nu este nevoie. De exemplu, un atașament într-un tabel Microsoft Dataverse ar putea să returneze "appres://datasources/Contacts/table/..." Ca și în exemplul camerei, puteți afișa această imagine setând proprietatea Imagine unui control de imagine la această referință, care preia datele binare.

Când salvați un tip de date media, cum ar fi o imagine, într-o bază de date, aplicația trimite imaginea reală sau datele media, nu referința URI.

Limite dimensionale

În ceea ce privește șirurile de text și URI-urile, aceste tipuri de date nu au o limită presetată pentru lungimea lor.

Datele binare la care se referă aceste tipuri de date nu au nici o limită prestabilită de dimensiune. De exemplu, o imagine capturată prin intermediul camerei de control la care se face referire acum ca "appres://...” poate fi la fel de mare și de o rezoluție cât de înaltă poate reda camera dispozitivului. Rezoluția, rata de cadre și alte atribute ale fișierelor media nu sunt limitate de tipul de date, dar controalele specifice pentru redarea și captarea media pot avea propriile lor limitări.

Cu toate acestea, toate dimensiunile de date depind de cantitatea de memorie disponibilă în aplicație. Programele de navigare care rulează pe un computer desktop acceptă de obicei mai mult de 100 megabiți de date. Cu toate acestea, cantitatea de memorie disponibilă pe un dispozitiv, cum ar fi un telefon, ar putea fi mult mai mică, de obicei în intervalul 30-70 megabiți. Pentru a stabili dacă aplicația dvs. va rula în aceste limite, testați scenarii comune pe toate dispozitivele pe care ar trebui să ruleze.

Ca o practică optimă, păstrați datele în memorie doar atât timp cât este necesar. Încărcați imagini într-o bază de date cât mai curând posibil; descărcați imaginile numai atunci când utilizatorul aplicației le solicită.

Număr și monedă

Tipurile de date Număr și Monedă utilizează standardul IEEE 754 cu virgulă mobilă cu dublă precizie. Acest standard oferă o gamă foarte mare de numere în care să lucreze, de la –1,79769 x 10308 la 1,79769 x 10308. Cea mai mică valoare care poate fi reprezentată este 5 x 10–324.

Aplicațiile proiectate pe pânză pot reprezenta exact numere integrale (sau întregi) între –9.007.199.254.740.991 (-(253– 1)) și 9.007.199.254.740.991 (253 – 1), inclusiv. Acest interval este mai mare decât tipurile de date întregi pe 32 de biți (sau 4 baiți) pe care bazele de date le folosesc în mod obișnuit. Cu toate acestea, aplicațiile proiectate pe pânză nu pot reprezenta tipuri de date pe 64 de biți (sau 8 baiți). Poate doriți să stocați numărul într-un câmp text sau să utilizați o coloană calculată pentru a face o copie a numărului într-un câmp text, astfel încât să fie mapat într-un tip de date Text în aplicația proiectată pe pânză. În acest mod, puteți să țineți, să afișați și să introduceți aceste valori, precum și să le comparați pentru a determina dacă sunt egale; cu toate acestea, nu puteți efectua calcule numerice pe acestea în acest formular.

Aritmetica cu virgulă mobilă este aproximativă, astfel încât uneori poate da rezultate neașteptate cu multe exemple documentate. V-ați putea aștepta ca formula 55 / 100 * 100 să returneze exact 55 și (55 / 100 * 100) - 55 să returneze exact zero. Cu toate acestea, ultima formulă returnează 7,1054 x 10–15, care este foarte mic, dar nu zero. Această diferență minusculă nu provoacă în mod normal o problemă, iar aplicația o rotunjește atunci când arată rezultatul. Cu toate acestea, micile diferențe se pot compune în calculele ulterioare și să pară că dau un răspuns greșit.

Sistemele de baze de date stochează adesea valute și efectuează calcule folosind matematica zecimală, care oferă un interval mai mic, dar un control mai mare asupra preciziei. În mod implicit, aplicațiile proiectate pe pânză mapează monedele în și în afara valorilor cu virgulă mobilă; prin urmare, rezultatul poate diferi de calculele efectuate într-un tip de date zecimal nativ. Dacă acest tip de discrepanță va cauza probleme, este posibil să doriți să lucrați cu aceste valori ca Text, la fel ca pentru numere întregi mari descrise anterior în această secțiune.

Dată, Oră și DatăOră

Fusuri orare

Valorile dată/oră se încadrează în aceste categorii:

  • Local pentru utilizator: Aceste valori sunt stocate în UTC (Timpul universal coordonat), dar fusul orar al utilizatorului aplicației afectează modul în care aplicația arată aceste valori și modul în care utilizatorul aplicației le specifică. Ca exemplu, același moment apare diferit pentru un utilizator din Canada față de un utilizator din Japonia.
  • Independent de fusul orar: Aplicația arată aceste valori la fel și utilizatorul aplicației le specifică la fel, indiferent de fusul orar. Același moment apare în același fel pentru un utilizator în Canada cum apare pentru un utilizator în Japonia. Autorii aplicațiilor care nu se așteaptă ca aplicațiile lor să ruleze pe fusuri orare diferite utilizează aceste valori, deoarece în general sunt mai simple.

Acest tabel prezintă câteva exemple:

Tip de dată/oră Valoare stocată în baza de date Valoare afișată și introdusă la 7 ore spre vest de UTC Valoare afișată și introdusă la 4 ore spre est de UTC
Local pentru utilizator Duminică, Mai 19, 2019
4:00
Sâmbătă, Mai 18, 2019
21:00
Duminică, Mai 19, 2019
8:00
Independent de fusul orar Duminică, Mai 19, 2019
4:00
Duminică, Mai 19, 2019
4:00
Duminică, Mai 19, 2019
4:00

Pentru data/orele Locale pentru utilizator, aplicațiile proiectate pe pânză utilizează fusul orar al browserului sau dispozitivului, dar aplicațiile bazate pe model utilizează setarea utilizatorului Dataverse. Aceste setări se potrivesc de obicei, dar rezultatele diferă dacă aceste setări diferă.

Utilizați funcțiile DateAdd și TimeZoneInformation pentru a converti ora locală în UTC și înapoi. Consultați exemplele de la sfârșitul documentației pentru aceste funcții.

Echivalente numerice

Aplicațiile proiectate pe pânză rețin și calculează toate valorile datei/orei, indiferent dacă se folosește Local pentru utilizator sau Independent de fus orar în UTC. Aplicația traduce valorile pe baza fusului orar al utilizatorului aplicației atunci când le arată și când utilizatorul aplicației le specifică.

Când o aplicație proiectată pe pânză citește o valoare Independentă de fus orar de la o sursă de date sau scrie o astfel de valoare într-o sursă de date, aplicația ajustează automat valoarea pentru a compensa fusul orar al utilizatorului aplicației. Aplicația tratează apoi valoarea ca o valoare UTC, în concordanță cu toate celelalte valori de dată/oră din aplicație. Din cauza acestei compensații, valoarea originală Independentă de fus orar apare atunci când aplicația ajustează valoarea UTC pentru fusul orar al utilizatorului aplicației.

Puteți observa mai îndeaproape acest comportament folosind funcția Value pentru a accesa valoarea numerică care stă la baza unei date/ore. Această funcție returnează valoarea dată/oră ca număr de milisecunde începând cu 1 ianuarie, 1970 00:00:00.000 UTC.

Deoarece fiecare valoare dată/oră este păstrată în UTC, formula Value( Date( 1970, 1, 1 ) ) nu va returna zero în majoritatea părților lumii, deoarece funcția Date returnează o dată în UTC. De exemplu, formula ar returna 28.800.000 într-un fus orar diferit față de UTC cu opt ore. Acest număr reflectă numărul de milisecunde în opt ore.

Revenind la exemplul nostru de mai sus:

Tip de dată/oră Valoare stocată în baza de date Valoare afișată și introdusă la 7 ore spre vest de UTC Funcția Value returnează
Local pentru utilizator Duminică, Mai 19, 2019
4:00
Sâmbătă, Mai 18, 2019
21:00
1,558,238,400,000
(Duminică, Mai 19, 2019
4:00 UTC)
Independent de fusul orar Duminică, Mai 19, 2019
4:00
Duminică, Mai 19, 2019
4:00
1,558,263,600,000
(Duminică, Mai 19, 2019
11:00 UTC)

Conversia orelor Unix

Timpurile Unix reflectă numărul de secunde de la 1 ianuarie, 1970 00:00:00 UTC. Deoarece aplicațiile pânză folosesc milisecunde în loc de secunde, puteți converti între cele două multiplicând sau împărțind cu 1.000.

De exemplu, ora Unix arată 9 septembrie 2001, la 01:46:40 UTC ca 1,000,000,000. Pentru a afișa acea valoare dată/oră într-o aplicație proiectată pe pânză, înmulțiți numărul cu 1.000 pentru a-l converti în milisecunde, apoi utilizați-l într-o funcție Text. Formula Text ( 1000000000 * 1000, DateTimeFormat.UTC ) returnează șirul 2001-09-09T01:46:40.000Z.

Cu toate acestea, funcția respectivă afișează Sâmbătă, 8 septembrie 2001 18:46:40 dacă utilizați formatul DateTimeFormat.LongDateTime24 într-un fus orar care este decalat cu -7 ore de la UTC (7 ore la vest de UTC). Acest rezultat arată valoarea DateTime corectă pe baza fusului orar local.

Pentru a converti la un timp Unix, împărțiți rezultatul de la Valoare cu 1.000:
RoundDown( Value( UnixTime ) / 1000, 0 )

Dacă aveți nevoie de timpul Unix într-o valoare Dată pentru calcule suplimentare sau afișare în interior Power Apps, utilizați această formulă:
DateAdd( Date( 1970,1,1 ), UnixTime, Seconds )

SQL Server

SQL Server are Datetime, Datetime2 și alte tipuri de date dată/oră care nu includ o compensare de fus orar și nu indică în ce fus orar se află. Aplicațiile proiectate pe pânză presupun că aceste valori sunt stocate în UTC și le tratează ca fiind Local pentru utilizator. Dacă valorile sunt independente de fusul orar, corectați pentru traducerile UTC utilizând funcția TimeZoneOffset.

Aplicațiile proiectate pe pânză utilizează informațiile din fusul orar incluse în câmpuri Datetimeoffset atunci când convertiți o valoare în reprezentarea UTC internă a aplicației. Aplicațiile folosesc întotdeauna UTC ca fus orar (decalarea fusului orar zero) atunci când scriu date.

Aplicațiile proiectate pe pânză citesc și scriu valorile tipurilor de date Timp în SQL Server ca șiruri de text în Formatul de durată ISO 8601. De exemplu, trebuie să analizați acest format șir și să utilizați funcția Time pentru a converti șirul de text "PT2H1M39S” la o valoare Timp:

With( 
    Match( "PT2H1M39S", "PT(?:(?<hours>\d+)H)?(?:(?<minutes>\d+)M)?(?:(?<seconds>\d+)S)?" ),
    Time( Value( hours ), Value( minutes ), Value( seconds ) )
)
// Result: 2:01 AM (as shown in a label control, use the Text function to see the seconds)

Amestecarea informațiilor despre dată și oră

Dată, Oră și DateTime au nume diferite, dar toate dețin aceleași informații despre date și ore.

O valoare Dată poate include informații despre oră, care este de obicei miezul nopții. O valoare Oră poate transporta informații despre dată, care este de obicei 1 ianuarie 1970. Dataverse de asemenea, stochează informații despre timp cu un câmp Numai dată, dar afișează numai informațiile despre date în mod implicit. În mod similar, aplicațiile proiectate pe pânză disting uneori între aceste tipuri de date pentru a determina formatele și controalele implicite.

Adăugarea și scăderea valorilor datei și ora direct nu este recomandată, deoarece fusul orar și alte conversii ar putea provoca rezultate confuze. Fie folosiți funcția Value pentru a converti valorile dată/oră în milisecunde și țineți cont de fusul orar al utilizatorului aplicației sau utilizați funcțiile DateAdd și DateDiff pentru a adăuga sau scădea din una dintre aceste valori.

Alegeri și Da/Nu

Opțiunile și tipurile de date cu două opțiuni oferă două sau mai multe opțiuni pe care le poate selecta un utilizator de aplicație. De exemplu, o alegere Starea comenzii ar putea oferi alegerile Nou, Expediat, Facturat și Închis. Tipul de date cu două opțiuni oferă doar două opțiuni.

Ambele tipuri de date își arată etichetele într-un context cu șiruri de text. De exemplu, un control de etichetă arată una dintre opțiunile de stare ale comenzii dacă este de proprietatea controlului Text este setată la o formulă care face referire la acea alegere. Etichetele opționale pot fi localizate pentru utilizatorii de aplicații din diferite locații.

Când un utilizator de aplicație selectează o opțiune și salvează această modificare, aplicația transmite datele în baza de date, care stochează datele respective într-o reprezentare independentă de limbă. O opțiune dintr-o alegere este transmisă și stocată ca număr, iar o opțiune dintr-un tip de date cu două opțiuni este transmisă și stocată ca valoare booleană.

Etichetele sunt destinate numai afișării. Nu puteți efectua comparații directe cu etichetele, deoarece sunt specifice unei limbi. În schimb, fiecare alegere are o enumerare care funcționează cu numărul subiacent sau valoarea booleană. De exemplu, nu puteți utiliza această formulă:

If( ThisItem.OrderStatus = "Active", ...

Dar puteți utiliza această formulă:

If( ThisItem.OrderStatus = OrderStatus.Active, ...

Pentru alegerile globale (pe care le partajează tabelele), numele enumerării setului de opțiuni se potrivește cu numele alegerii globale. Pentru opțiunile locale (care sunt cuprinse într-un tabel), numele ar putea conține numele tabelului. Acest comportament evită conflictele dacă mai multe tabele au opțiuni care au același nume. De exemplu, tabelul Conturi ar putea avea o alegere Starea comenzii și numele său ar putea fi OrderStatus (Conturi). Acest nume conține unul sau mai multe spații și paranteze, așa că trebuie să îl înconjurați cu ghilimele unice dacă faceți referință la el într-o formulă.

În plus, valorile cu două opțiuni se pot comporta și ca valori booleene. De exemplu, o valoare cu două opțiuni numită TaxStatus ar putea avea etichetele Impozabil și Neimpozabil, care corespund valorilor adevărat și respectiv fals. Pentru a demonstra, puteți utiliza această formulă:

If( ThisItem.Taxable = TaxStatus.Taxable, ...

Puteți utiliza și această formulă echivalentă:

If( ThisItem.Taxable, ...

Notă

Ne puteți spune care preferințele dvs. lingvistice pentru documentație? Răspundeți la un chestionar scurt. (rețineți că acest chestionar este în limba engleză)

Chestionarul va dura aproximativ șapte minute. Nu sunt colectate date personale (angajament de respectare a confidențialității).