Share via


Decimalne funkcije, Plutajuće i Funkcije vrijednosti

Odnosi se na: Stupci formule aplikacija Dataverse od gotovih gradivnih elemenata Tokovi radne površine CLI aplikacije stvorene prema Power Platform modelu

Pretvara niz teksta ili drugih vrsta u broj.

Opis

Napomena

Power Apps podržava samo funkciju Value i vraća plutajuću vrijednost. Uskoro će se dodati podrška za funkcije Decimal i Float .

Pomoću funkcija Decimal , Float i Value pretvorite niz teksta koji sadrži brojčane znakove u brojčanu vrijednost. Ovu funkciju koristite kada trebate izvršiti izračune brojeva koje je korisnik unio kao tekst. Te se funkcije mogu koristiti i za pretvaranje drugih vrsta u broj, kao što su datum/vrijeme i Booleov.

Funkcija Value vratit će zadanu numeričku vrstu podataka za glavno računalo koje koristite, što je obično Power Fx decimalni broj i najbolji izbor za većinu situacija. Koristite funkcije Decimal i Float kada vam je potrebna određena vrsta podataka za određeni scenarij, kao što je znanstveni izračun s vrlo velikim brojem. Dodatne informacije o radu s tim vrstama podataka potražite u odjeljku Brojevi vrsta podataka.

Različiti jezici različito tumače , i .. Text se prema zadanim postavkama tumači na jeziku trenutačnog korisnika. Možete jezičnom oznakom odrediti jezik koji će se upotrebljavati, koristeći iste jezične oznake koje vraća funkcija Language.

Napomene o obliku niza:

  • Niz može imati kao prefiks simbol valute za trenutačni jezik. Simbol valute se zanemaruje. Simboli valuta za druge jezike se ne zanemaruju.
  • Niz može sadržavati znak postotka (%) na kraju, što znači da je to postotak. Prije vraćanja, broj će biti podijeljen sa 100. Postoci i simboli valuta ne mogu se miješati.
  • Niz može biti u znanstvenom zapisu, gdje je 12 x 103 izraženo kao „12e3”.

Ako broj nije u ispravnom obliku, te će funkcije vratiti pogrešku.

Da biste pretvarali vrijednosti datuma i vremena, koristite funkcije DateValue, TimeValue ili DateTimeValue.

Sintaksa

Decimal( niz [, Jezična Oznaka ] )
Float( String [, LanguageTag ] )
Value( niz [, jezična oznaka ] )

  • String – obavezno. Niz koji se pretvara u brojčanu vrijednost.
  • LanguageTag – neobavezno. Jezična oznaka za raščlanjivanje niza. Ako nije naveden, koristi se jezik trenutačnog korisnika.

Decimalni broj ( neupisan )
Plutajući ( neupisani )
Vrijednost( Netipizirano )

Primjeri

Korisnik koji koristi ove formule nalazi se u Sjedinjenim Američkim Državama i kao svoj jezik odabrao je engleski. Funkcija Language vraća „en-US”. Glavno Power Fx računalo prema zadanim postavkama koristi decimalni broj .

Vrijednost i decimalni broj

Budući da koristimo glavno računalo koje ima decimalni broj kao zadani, Vrijednost i Decimal vratit će iste rezultate.

Formula Opis Rezultat
Value( "123.456" )
Decimalni broj( "123.456" )
Koristit će se zadani jezik „en-US”, koji koristi točku kao decimalni razdjelnik. 123.456 (decimalni broj)
Value( "123.456", "es-ES" )
Decimalni broj ( "123.456", "es-ES" )
„es-ES” je jezična oznaka za španjolski u Španjolskoj. U Španjolskoj se kao razdjelnik tisućica koristi točka. 123456 (decimalni broj)
Value( "123,456" )
Decimalni broj( "123,456" )
Koristit će se zadani jezik „en-US”, koji koristi zarez kao razdjelnik tisućica. 123456 (decimalni broj)
Value( "123.456", "es-ES" )
Decimalni broj ( "123,456", "es-ES" )
„es-ES” je jezična oznaka za španjolski u Španjolskoj. U Španjolskoj je zarez decimalni razdjelnik. 123.456 (decimalni broj)
Value( "12.34%" )
Decimalni broj( "12.34%" )
Znak postotka na kraju niza označava da je to postotak. 0,1234 (decimalni broj)
Value( "$ 12.34" )
Decimal( "$ 12.34" )
Simbol valute za trenutačni jezik se zanemaruje. 12.34 (decimalni broj)
Value( "24e3" )
Decimalni broj ( "24e3" )
Znanstveni zapis za 24 x 103. 24000 (decimalni broj)
Vrijednost( true )
Decimal( true )
Pretvara Booleov u broj, 0 za false i 1 za true 1 decimalni broj

Float

Funkcija Float imat će vrlo blizu istih rezultata kao i gore. Budući da se 123.456 ne može precizno prikazati u Floatu, rezultat je aproksimacija koja je vrlo bliska (123.456000000000003069544618484E2), a složeni izračuni pogrešaka zaokruživanja mogli bi rezultirati neočekivanim rezultatom. Rezultirajuća vrsta bit će Float umjesto toga.

Gdje se stvari razlikuju je ako se koriste veći ili manji brojevi.

Formula Opis Rezultat
Float( 1e100 ) Budući da je doslovni broj 1e100 izvan raspona decimalnog broja, to rezultira pogreškom prije pozivanja funkcije Float . pogreška (prelijevanje)
Decimalni broj ( 1e100 ) Isti problem kao i kod funkcije Float . pogreška (prelijevanje)
Float( "1e100" ) Broj u tekstnom nizu nalazi se unutar raspona plutajućih brojeva. 1e100 plovak
Decimalni broj ( "1e100" ) Broj u tekstnom nizu je izvan raspona decimalnih brojeva. pogreška (prelijevanje)
Float( "10000000000.0000000001" ) Broj u tekstnom nizu nalazi se unutar raspona plutajućih brojeva. Međutim, broj zahtijeva veću preciznost nego što plovak može pružiti i bit će skraćen. 1 (plovak)
Decimal( "10000000000.0000000001" ) Broj u tekstnom nizu nalazi se unutar raspona i preciznosti decimalnih brojeva. 10000000000.0000000001 (decimalni broj)