Функции Decimal, Float и Value
Отнася се за: Колони
Dataverse с формули за приложения
за платно Потоци
на работния плот Приложения на компютъра
Power Pages
Power Platform на командването
Преобразува низ от текст или други типове в число.
Описание
Бележка
Power Apps поддържа само функцията Value и връща стойност Float . Скоро ще бъде добавена поддръжка за функциите Decimal и Float .
Използвайте функциите Decimal, Float и Value , за да преобразувате низ от текст, който съдържа числови знаци, в числова стойност. Използвайте тези функции, когато трябва да извършите изчисления на числа, които са въведени като текст от потребител. Тези функции могат да се използват и за преобразуване на други типове в число, като дата/час и Boolean.
Функцията Value ще върне числовия тип данни по подразбиране за Power Fx хоста, който използвате, който обикновено е десетичен и е най-добрият избор за повечето ситуации. Използвайте функциите Decimal и Float , когато имате нужда от конкретен тип данни за конкретен сценарий, като например научно изчисление с много голямо число. За повече подробности относно работата с тези типове данни вижте раздела Числа на типове данни.
Различни езици интерпретират , и . различно. По подразбиране текстът се интерпретира в езика на текущия потребител. Можете да укажете езика, който да използвате с езиков маркер, като използвате същите езикови тагове, които се връщат от функцията Language.
Бележки за формата на низа:
- Низът може да бъде префиксиран със символа на валутата за текущия език. Символът на валутата се игнорира. Валутните символи за други езици не се пренебрегват.
- Низът може да включва знак за процент (%) в края, което показва, че е процент. Номерът ще бъде разделен на 100, преди да бъде върнат. Процентите и валутните символи не могат да се смесват.
- Низът може да е в научна нотация, с 12 x 103 изразено като "12e3".
Ако номерът не е в правилен формат, тези функции ще върнат грешка.
За да преобразувате стойности за дата и час, използвайте DateValue, TimeValue или DateTimeValue функции.
Синтаксис
Decimal( String [, LanguageTag ] )
Float( Низ [, LanguageTag ] )
Value( String [, LanguageTag ] )
- Стринг - Задължителен. Низ за преобразуване в числова стойност.
- LanguageTag - По избор. Езиковият маркер, в който да се анализира низът Ако не е указан, езикът на текущия потребител се използва.
Десетична ( невъведена )
Float ( невъведен)
Стойност ( невъведена )
- Невъведено - Задължително. Нетипизиран обект , който представлява число. Приемливите стойности зависят от нетипизирания доставчик. За JSON се очаква нетипизиран обект да бъде JSON число, булева стойност или текст, който може да бъде преобразуван в число. Имайте предвид, че форматите, свързани с локала, са важни съображения, когато комуникирате с външни системи.
Примери
Потребителят, използващ тези формули, се намира в Съединените щати и е избрал английски за свой език. Функцията Language се връща „en-US“. Хостът Power Fx използва десетичен знак по подразбиране.
Стойност и десетична запетая
Тъй като използваме хост, който има Decimal по подразбиране, Value и Decimal ще върнат същите резултати.
Формула | Описание | Result |
---|---|---|
Стойност( "123.456" ) Десетичен ( "123.456" ) |
Ще се използва езикът по подразбиране на „en-US“, който използва период като десетичен разделител. | 123.456 (десетична) |
Стойност ( "123.456", "es-ES" ) Десетичен ( "123.456", "es-ES" ) |
"es-ES" е езиковият етикет за испански в Испания. В Испания един период е разделител за хиляди. | 123456 (десетична запетая) |
Стойност( "123,456" ) Десетичен ( "123,456" ) |
Ще се използва езикът по подразбиране на „en-US“, който използва запетая като разделител за хилядни. | 123456 (Десетичен) |
Стойност( "123,456", "es-ES" ) Десетичен ( "123,456", "es-ES" ) |
"es-ES" е езиковият етикет за испански в Испания. В Испания запетая е десетичният разделител. | 123.456 (десетична) |
Стойност ( "12.34%" ) Десетичен ( "12.34%" ) |
Знакът за процент в края на низа показва, че това е процент. | 0,1234 (десетична запетая) |
Стойност( "$ 12.34" ) Десетичен ( "$ 12.34" ) |
Символът на валутата за текущия език се игнорира. | 12.34 (десетична запетая) |
Стойност( "24e3" ) Десетичен ( "24e3" ) |
Научна нотация за 24 х 103. | 24000 (десетична запетая) |
Стойност( вярно ) Десетичен знак( вярно ) |
Преобразува булево в число, 0 за невярно и 1 за вярно | 1 Десетична запетая |
Float
Функцията Float ще има много близки до същите резултати като по-горе. Тъй като 123.456 не може да бъде точно представен в Float, резултатът е приближение, което е много близко (123.456000000000003069544618484E2) и изчисленията на грешките при закръгляване могат да доведат до неочакван резултат. Полученият тип вместо това ще бъде Float .
Нещата се разминават, ако се използват по-големи или по-малки числа.
Формула | Описание | Result |
---|---|---|
Поплавък( 1e100 ) | Тъй като литералното число 1e100 е извън диапазона на десетичната запетая, това води до грешка преди извикването на функцията Float . |
грешка (препълване) |
Десетичен знак( 1e100 ) | Същият проблем като с функцията Float . | грешка (препълване) |
Float( "1e100" ) | Числото в текстовия низ е в диапазона на числата с плаваща стойност . | 1e100 Плувка |
Десетичен ( "1e100" ) | Числото в текстовия низ е извън диапазона на десетичните числа. | грешка (препълване) |
Float( "10000000000.0000000001" ) | Числото в текстовия низ е в диапазона на числата с плаваща стойност . Числото обаче изисква повече прецизност, отколкото може да осигури Float и ще бъде съкратено. | 1 (Плувка) |
Десетичен ( "10000000000.0000000001" ) | Числото в текстовия низ е както в диапазона, така и в точността на десетичните числа. | 10000000000.0000000001 (десетичен знак) |