Funkce Text

Platí pro: aplikace plátna aplikace plátna sloupce vzorců Dataverse modelem řízené aplikace Power Platform CLI

Převede libovolnou hodnotu a naformátuje číslo nebo hodnotu data a času na textový řetězec.

Popis

Funkce Text formátuje číslo nebo hodnotu data a času na základě jednoho z těchto typů argumentů:

  • Předdefinovaný formát data a času, který určíte pomocí výčtu DateTimeFormat. Pro data a čas se tento přístup upřednostňuje, protože se automaticky přizpůsobí jazyku a oblast uživatele.
  • Vlastní formát, který obsahuje řetězec zástupných symbolů, které například definují, zda čísla ukazují oddělovač desetinných míst a data, uvádějí celé jméno měsíce, měsíc jako zkratku nebo měsíc jako číslo. Power Apps podporuje stejnou podmnožinu zástupných symbolů jako Microsoft Excel. V tomto řetězci zástupný symbol jazyka určuje jazyk, ve kterém se mají interpretovat ostatní zástupné symboly. Pokud například vlastní formát obsahuje tečku, zástupný symbol jazykového formátu určuje, zda je tečka oddělovač desetinných míst (ja-JP) nebo tisíců (es-ES).

Další informace najdete v části týkající se práce s daty a časy.

Funkce Text může také převést libovolný typ dat na textovou reprezentaci pomocí výchozího formátu. To slouží k předávání netextových hodnot textovým funkcím, jako je Len, Right a IsMatch.

Předdefinované formáty data a času

Pro tyto příklady je použitým datem a časem úterý 7. dubna, 2020 8:26:59.180 v časovém pásmu UTC-7 hodin.

DateTimeFormat enum Popis Příklady (používající en-US)
LongDate Rok, měsíc, den v měsíci a den v týdnu o délce čtyř číslic. Názvy měsíce a dne v týdnu nejsou zkrácené. „Úterý 7. dubna 2020“
LongDateTime Rok o délce čtyř číslic, měsíc, den v měsíci a den v týdnu, plus hodina (12hodinový formát), minuty, sekundy a označení dop./odp. Názvy měsíce a dne v týdnu nejsou zkrácené. „Úterý 7. dubna 2020 8:26:59 PM“
LongDateTime24 Rok o délce čtyř číslic, měsíc, den v měsíci a den v týdnu, plus hodina (24hodinový formát), minuty a sekundy. Názvy měsíce a dne v týdnu nejsou zkrácené. "Úterý 7. dubna 2020 20:26:59"
LongTime Hodina (12hodinový formát), minuty, sekundy a označení dop./odp. "8:26:59 PM"
LongTime24 Hodina (24hodinový formát), minuty, sekundy. "20:26:59"
ShortDate Čtyřmístný rok s numerickým měsícem a dnem v měsíci. "4/7/2020"
ShortDateTime Čtyřmístný rok s numerickým měsícem a dnem v měsíci, plus hodina (12hodinový formát), minuty a označení dop./odp. "4/7/2020 8:26 PM"
ShortDateTime24 Čtyřmístný rok s numerickým měsícem a dnem v měsíci, plus hodina (12hodinový formát) a minuty. "4/7/2020 20:26"
ShortTime Hodina (12hodinový formát), minuty a označení dop./odp. "8:26 PM"
ShortTime24 Hodina (24hodinový formát) a minuty. "20:26"
UTC Hodnota data/času se převede na UTC na základě časového pásma uživatele a naformátuje se podle standardu ISO 8601. "2020-04-08T03:26:59.180Z"

Zástupné symboly čísel

Zástupný text Popis
0 (nula) Zobrazí neplatné nuly v případě, že číslo má méně číslic, než je počet nul ve formátu. Použijte třeba formát #,00, pokud chcete zobrazit 8,9 jako 8,90.
# Platí zde stejná pravidla jako pro 0 (nula). Text ale nevrací nuly navíc, když má formát méně číslic na některé ze stran desetinné čárky, než je symbolů # ve formátu. Například 8,9 se zobrazí, pokud je vlastní formát #, ## a číslo, které se má formátovat, je 8,9.
, (tečka) Zobrazí oddělovač desetinných míst v čísle. Závisí na jazyce vlastního formátu, další podrobnosti najdete v části týkající se globálních aplikací.
, (čárka) Zobrazí oddělovač skupin v čísle, často se používá pro tisíce. Text oddělí skupiny čárkami, pokud formát obsahuje čárku uzavřenou znaky čísla (#) nebo nulami. Závisí na jazyce vlastního formátu, další podrobnosti najdete v části týkající se globálních aplikací.

Pokud má číslo vpravo od desetinné čárky větší počet čísel, než je počet zástupných symbolů ve formátu, číslo se zaokrouhlí na tolik desetinných míst, kolik je těchto zástupných symbolů. Pokud je vlevo od desetinné čárky větší počet číslic než zástupných symbolů, číslice navíc se zobrazí. Pokud formát obsahuje vlevo od desetinné čárky pouze symboly čísla (#), čísla menší než 1 budou začínat oddělovačem desetinných míst (například .47).

Zástupné symboly data a času

Zástupný text Popis
m Zobrazí měsíc jako číslo bez úvodní nuly.
mm Zobrazí měsíc jako číslo s úvodní nulou (tam kde je to vhodné).
mmm Zobrazí měsíc jako zkratku (ledpro).
mmmm Zobrazí měsíc jako úplný název (ledenprosinec).
d Zobrazí den jako číslo bez úvodní nuly.
dd Zobrazí den jako číslo s úvodní nulou (tam kde je to vhodné).
ddd Zobrazí den jako zkratku (pone).
dddd Zobrazí den jako úplný název (pondělíneděle).
yy Zobrazí rok jako dvoumístné číslo.
yyyy Zobrazí rok jako čtyřmístné číslo.
h Zobrazí hodinu jako číslo bez úvodní nuly.
hh Zobrazí hodinu jako číslo s úvodní nulou (tam kde je to vhodné). Pokud formát obsahuje označení AM nebo PM, zobrazí se hodina ve 12hodinovém formátu. V opačném případě se hodina zobrazuje ve 24hodinovém formátu.
m Zobrazí minutu jako číslo bez úvodní nuly.

Tento zástupný symbol se musí zobrazovat ihned za kódem h nebo hh nebo bezprostředně před kódem ss. Jinak funkce Text vrátí místo minut měsíc.
mm Zobrazí minutu jako číslo s úvodní nulou (tam kde je to vhodné).

Tento zástupný symbol se musí zobrazovat ihned za zástupným symbolem h nebo hh nebo bezprostředně před zástupným symbolem ss. V opačném případě funkce Text vrátí místo minut měsíc.
s Zobrazí sekundu jako číslo bez úvodní nuly.
ss Zobrazí sekundu jako číslo s úvodní nulou (tam, kde je to vhodné).
f Zobrazí zlomky sekund.
AM/PM, a/p Zobrazí hodinu na základě 12hodinového formátu. Funkce Text vrátí AM nebo a pro časy od půlnoci do poledne a PM nebo p pro časy od poledne do půlnoci

Zástupné symboly literálu

Do řetězce formátu můžete zahrnout jakýkoli z těchto znaků. Zobrazí se ve výsledku funkce Text. Další znaky jsou rezervované pro budoucí zástupné symboly, proto byste je neměli používat.

Znak Popis
Jakýkoli symbol měny Znak dolaru, znak centu, znak eura atd.
+ Znaménko plus
( Levá závorka
: Dvojtečka
^ Vokáň – průtažný přízvuk (stříška)
' Apostrof
{ Levá složená závorka
< Symbol menší než
= Symbol rovná se
- Znaménko minus
/ Lomítko
) Pravá závorka
& Ampersand
~ Tilda
} Pravá složená závorka
> Symbol větší než
  Znak mezery

Globální aplikace

Funkce Text je globální. U široké škály jazyků ví, jak správně psát data, časy, měny a čísla. Aby fungovala správně, potřebuje tyto dva druhy údajů:

  • Jazyk vlastního formátu: Jak interpretovat vlastní formát? (informace pro tvůrce) Znaky oddělovače (. a ,) mají v různých jazycích různý význam. Pokud zadáte vlastní formát, můžete zahrnout zástupný symbol jazyka nebo použít výchozí hodnotu, která odráží jazyk, ve kterém je zařízení nastaveno. Ještě jednodušší je, když použijete jeden z předdefinovaných formátů datum / čas, které jsou jazykově nezávislé.
  • Jazyk výsledku: Jaký jazyk by se měl použít ve výsledku této funkce? (informace pro uživatele) Názvy měsíců a pracovních dnů musí být v příslušném jazyce pro uživatele aplikace, který můžete určit přidáním třetího nepovinného argumentu do funkce Text.

Pro oba určete jazyk pomocí a jazykové značky. Pokud chcete zobrazit seznam podporovaných jazyků, zadejte do řádku vzorců nebo karty RozšířenéText( 1234, "", ) a projděte si seznam národních prostředí navrhovaných pro třetí argument.

Zástupný symbol jazyka

Pokud chcete určit jazyk vlastního formátu, použijte:

Zástupný text Popis
[$-ZnačkaJazyka] LanguageTag je značka jazyka vrácená funkcí Language. Může specifikovat jenom jazyk (třeba [$-en] pro angličtinu), nebo může zahrnovat také oblast, (třeba [$-en-GB], která specifikuje Velkou Británii).

Zástupný symbol jazyka se může vyskytovat kdekoli ve vlastním formátu, může tam být ale jen jednou.

Pokud zadáte vlastní formát bez zástupného symbolu jazyka a formát je z globálního hlediska nejednoznačný, automaticky se vloží značka jazyka pro váš aktuální jazyk.

Pokud zástupný symbol neexistuje, předpokládá se při spuštění aplikace tento: [$-en US].

Poznámka:

V budoucí verzi se syntaxe tohoto zástupného symbolu může změnit, aby nedocházelo k záměnám s podobným zástupným symbolem podporovaným v Excelu.

Značka jazyka výsledku

Výsledek funkce Text zahrnuje přeložené řetězce pro měsíce, dny v týdnu a označení dop./odp. a také příslušné oddělovače skupin a desetinných míst.

Ve výchozím nastavení funkce Text používá jazyk uživatele spuštěné aplikace. Funkce Language vrátí značku jazyka aktuálního uživatele. Tuto výchozí hodnotu můžete přepsat zadáním značky jazyka pro třetí argument funkce Text.

Syntaxe

Text( NumberOrDateTime, DateTimeFormatEnum [, ResultLanguageTag ] )

  • NumberOrDateTime – Požadované. Číslo nebo hodnota data a času, které se mají formátovat.
  • DateTimeFormat – povinný. Člen výčtu FormátDataČasu
  • ResultLanguageTag – volitelná. Značka jazyka, který se má použít pro výsledný text. Ve výchozím nastavení se použije jazyk aktuálního uživatele.

Text( NumberOrDateTime, CustomFormat [, ResultLanguageTag ] )

  • Number – povinné. Číslo nebo hodnota data a času, které se mají formátovat.
  • CustomFormat – povinné. Jeden nebo více zástupných znaků se uzavírá do dvojitých uvozovek.
  • ResultLanguageTag – volitelná. Značka jazyka, který se má použít pro výsledný text. Ve výchozím nastavení se použije jazyk aktuálního uživatele.

Text( AnyValue )

  • AnyValue – povinné. Hodnota pro převod na textovou reprezentaci. Používá se výchozí formát.

Text ( Untyped )

  • Untyped – povinné. Netypovaný objekt, který představuje řetězec. Přijatelné hodnoty závisí na poskytovateli netypovaného objektu. V případě JSON, pokud je netypovaný objekt číslo nebo logická hodnota, bude převeden na text.

Příklady

Pokud není určeno jinak, uživatel, který spouští tyto vzorce, se nachází ve Spojených státech a vybral si jako svůj jazyk angličtinu. Funkce Language vrátí en-US.

Počet

Vzorec Popis Výsledek
Text( 1234.59, "####.#" ) Formátuje číslo s jedním desetinným místem. "1234,6"
Text( 8.9, "#.000" ) V případě potřeby vyplní desetinnou část čísla koncovými nulami. "8,900"
Text( 0.631, "0.#" ) V případě potřeby vyplní celou část čísla úvodními nulami. "0,6"
Text( 12, "#.0#" )
Text( 1234.568, "#.0#" )
Vyplní desetinnou část čísla nulami pro jedno desetinné číslo a zahrne i druhé desetinné číslo, pokud je zadané. "12,0"
"1234,57"
Text( 12000, "$ #,###" )
Text( 1200000, "$ #,###" )
Umístí po každých třech číslicích oddělovač tisíců a zahrne symbol měny. "$ 12,000"
"$ 1,200,000"

Datum a čas

  • Čas 2:37:47 PM a datum Monday, November 23, 2015
  • Spojené státy – tichomořské časové pásmo (UTC-8)
Vzorec Popis Výsledek
Text( Now(), DateTimeFormat.LongDate ) Formátuje text jako řetězec dlouhého data v jazyce a národním prostředí aktuálního uživatele. "Monday, November 23, 2015"
Text( Now(), DateTimeFormat.LongDateTime ) Formátuje text jako řetězec dlouhého data a času v jazyce a národním prostředí aktuálního uživatele. Používá 12hodinový formát času. "Monday, November 23, 2015 2:37:47 PM"
Text( Now(), DateTimeFormat.LongTime24 ) Formátuje text jako řetězec dlouhého času, používá 24hodinový formát času. "14:37:47"
Text( Now(), DateTimeFormat.ShortDate ) Formátuje text jako řetězec krátkého data v jazyce a národním prostředí aktuálního uživatele. "11/23/2015"
Text( Now(), "d-mmm-yy" ) Formátuje text pomocí znaků zástupného symbolu:
  • d pro den v měsíci s jednou nebo dvěma číslicemi
  • - jako znak literálu zkopírovaný do výsledku
  • mmm pro zkratku měsíce s třemi písmeny
  • - jako další znak literálu zkopírovaný do výsledku
  • yy pro zkratku roku o dvou číslicích
"23-Nov-15"
Text(1448318857*1000, "mmm. dd, yyyy (hh:mm:ss AM/PM)") Pokud znásobíte zdrojovou hodnotu hodnotou 1 000, zobrazí se hodnota data a času Unixu ve srozumitelném formátu. "Nov. 23, 2015 (02:47:37 PM)"

Globální aplikace

Vzorec Description Result
Text(1234567.89, "[$-fr-FR]# ###,## €", "fr-FR") Zobrazuje mezeru jako oddělovač seskupení, čárku jako oddělovač desetinných míst a jako symbol měny. "1 234 567,89 €"
Text(1234567,89; "[$-fr-FR]# ###,## €") Pokud se zdrojová data řídí francouzským zvykem používat jako oddělovač desetinných míst čárku, musíte změnit národní prostředí na francouzštinu a oddělit argumenty středníkem místo čárky, abyste získali stejný výsledek jako výše. "1 234 567,89 €"
Text( Date(2016,1,31), "dddd mmmm d" ) Vrátí den v týdnu, měsíc a den v měsíci v jazyce aktuálního uživatele. Vzhledem k tomu, že žádný ze zástupných symbolů není závislý na jazyce, není potřeba použít značku jazyka formátu textu. "Sunday January 31"
Text( Date(2016,1,31), "dddd mmmm d", "es-ES" ) Vrátí den v týdnu, měsíc a den v měsíci v jazyce es-ES. "domingo enero 31"

Převod hodnot na text

Vzorec Popis Výsledek
Text( 1234567.89 ) Převede číslo na řetězec. Neexistují žádné oddělovače tisíců ani kontrola nad počtem číslic před nebo za desetinným oddělovačem; pro větší kontrolu zadejte jako druhý argument zástupné symboly pro číslo. "1234567.89"
Text( DateTimeValue( "01/04/2003" ) ) Převede hodnotu data / času na řetězec textu. Chcete-li ovládat převod, zadejte buď číslo výčtu DateTimeFormat nebo řetězec vlastního formátu. "1/4/2003 12:00 AM"
Text( true ) Převede logickou hodnotu na řetězec. "true"
Text( GUID() ) Převede generovaný GUID hodnotu na řetězec. "f8b10550-0f12-4f08-9aa3-bb10958bc3ff"
Left( Text( GUID() ), 4 ) Vrátí první čtyři znaky vygenerovaného GUID. "2d9c"