Condividi tramite


DecimalFunzioni , Floate Value

Functions Si applica a:
Decimal
Float
Copilot Studio Desktop flow Dataverse formula columns Power Platform Dataverse functions (Funzioni dataverse) dell'interfaccia della riga di comando di Power Platform
Value App Canvas Copilot Studio Flussi desktop Colonne formula di Dataverse App basate su modello Funzioni powerverse dell'interfaccia della riga di comando di Power Platform Power Pages

Converte una stringa di testo o di altro tipo in un numero.

Descrizione

Nota

Power Apps supporta solo la Value funzione e restituisce un Float valore. Il supporto per le Decimal funzioni e Float verrà presto aggiunto.

Usare le Decimalfunzioni , Floate Value per convertire una stringa di testo contenente caratteri numerici in un valore numerico. Usa questa funzione quando devi eseguire calcoli con numeri immessi come testo da un utente. Queste funzioni possono essere utilizzate anche per convertire altri tipi in un numero, come data/ora e booleano.

La Value funzione restituirà il tipo di dati numerico predefinito per l'host Power Fx in uso, che è in genere Decimal e la scelta migliore per la maggior parte delle situazioni. Usare le Decimal funzioni e Float quando è necessario un tipo di dati specifico per uno scenario specifico, ad esempio un calcolo scientifico con un numero molto elevato. Per ulteriori dettagli su come lavorare con questi tipi di dati, vedi la sezione Numeri di Tipi di dati.

Ogni lingua interpreta , e . differentemente. Per impostazione predefinita, il testo viene interpretato nella lingua dell'utente corrente. Puoi specificare la lingua da usare con uno degli stessi tag di lingua restituiti dalla funzione Language.

Note sul formato della stringa:

  • La stringa può essere preceduta dal simbolo di valuta per la lingua corrente. Il simbolo di valuta viene ignorato. I simboli di valuta per le altre lingue non vengono ignorati.
  • La stringa può includere un segno di percentuale (%) alla fine, per indicare che si tratta di una percentuale. Il numero verrà diviso per 100 prima di essere restituito. Le percentuali e i simboli di valuta non possono essere combinati.
  • La stringa può essere scritta in notazione scientifica, con 12 x 103 espresso come "12e3".

Se il numero non è nel formato corretto, queste funzioni restituiranno un errore.

Per convertire i valori di data e ora, usa le funzioni DateValue, TimeValue o DateTimeValue.

Sintassi

Decimal( String [, LanguageTag ] )
Float( String [, LanguageTag ] )
Value( String [, LanguageTag ] )

  • Stringa - Obbligatorio. Stringa da convertire in un valore numerico.
  • LanguageTag - Facoltativo. Tag di lingua in cui analizzare la stringa. Se non viene specificato, viene usata la lingua dell'utente corrente.

Decimal( Dinamico )
Float( Dinamico )
Value( Dinamico )

  • Dinamico : obbligatorio. Valore dinamico che rappresenta un numero. I valori accettabili dipendono dal provider non tipizzato. Per JSON, il valore dinamico deve essere un numero JSON, un valore booleano o un testo che può essere convertito in un numero. Tieni presente che i formati relativi alle impostazioni locali sono considerazioni importanti quando si comunica con i sistemi esterni.

Esempi

L'utente che esegue queste formule si trova negli Stati Uniti e ha selezionato l'inglese come lingua. La funzione Language restituisce "en-US". L'host Power Fx usa per Decimal impostazione predefinita.

Value e Decimal

Poiché si usa un host che ha Decimal come impostazione predefinita e ValueDecimal restituirà gli stessi risultati.

Formula Descrizione Result
Value( "123.456" )
Decimal( "123.456" )
Verrà usata la lingua predefinita "en-US", che usa il punto come separatore decimale. 123.456 (Decimal)
Value( "123.456", "es-ES" )
Decimal( "123.456", "es-ES" )
"es-ES" è il tag di lingua per lo spagnolo in Spagna. In Spagna il punto è il separatore delle migliaia. 123456 (Decimal)
Value( "123,456" )
Decimal( "123,456" )
Verrà usata la lingua predefinita "en-US", che usa la virgola come separatore delle migliaia. 123456 (Decimal)
Value( "123.456", "es-ES" )
Decimal( "123.456", "es-ES" )
"es-ES" è il tag di lingua per lo spagnolo in Spagna. In Spagna la virgola è il separatore decimale. 123.456 (Decimal)
Value( "12.34%" )
Decimal( "12.34%" )
Il segno di percentuale alla fine della stringa indica che si tratta di una percentuale. 0.1234 (Decimal)
Value( "$ 12,34" )
Decimal( "$ 12,34" )
Il simbolo di valuta per la lingua corrente viene ignorato. 12.34 (Decimal)
Value( "24e3" )
Decimal( "24e3" )
Notazione scientifica per 24 x 103. 24000 (Decimal)
Value( true )
Decimal( true )
Converte un valore booleano in un numero, 0 per false e 1 per true 1 Decimal

Float

La Float funzione avrà molto vicino agli stessi risultati di quanto sopra. Poiché 123.456 non può essere rappresentato con precisione in Float, il risultato è un'approssimazione molto vicina (123.456000000000003069544618484E2) e l'arrotondamento dei calcoli degli errori di arrotondamento può comportare un risultato imprevisto. Il tipo risultante sarà Float invece.

Il risultato sarà diverso se vengono utilizzati numeri più grandi o più piccoli.

Formula Descrizione Result
Float( 1e100 ) Poiché il numero 1e100 letterale non è compreso nell'intervallo di un Decimaloggetto , viene generato un errore prima di chiamare la Float funzione. errore (trabocco)
Decimal( 1e100 ) Stesso problema della Float funzione. errore (trabocco)
Float( "1e100" ) Il numero nella stringa di testo è compreso nell'intervallo di Float numeri. 1e100 Float
Decimal( "1e100" ) Il numero nella stringa di testo non rientra nell'intervallo di Decimal numeri. errore (trabocco)
Float( "10000000000.0000000001" ) Il numero nella stringa di testo è compreso nell'intervallo di Float numeri. Tuttavia, il numero richiede maggiore precisione rispetto a un Float può fornire e verrà troncato. 1 (Float)
Decimal( "10000000000.0000000001" ) Il numero nella stringa di testo è compreso sia nell'intervallo che nella precisione di un Decimal numero. 100000000000.000000001 (Decimal)