Funkce Blank, Coalesce, IsBlank a IsEmpty v PowerAppsBlank, Coalesce, IsBlank, and IsEmpty functions in PowerApps

Testuje, jestli je hodnota prázdná nebo jestli tabulka neobsahuje žádné záznamy, a umožňuje vytvářet prázdné hodnoty.Tests whether a value is blank or a table contains no records, and provides a way to create blank values.

PřehledOverview

Prázdná hodnota je zástupný text pro „žádná hodnota“ nebo „neznámá hodnota“.Blank is a placeholder for "no value" or "unknown value." Ovládací prvek Textové zadání je prázdný, pokud do něj uživatel nezadal žádné znaky.A Text input control is blank if the user hasn't typed any characters in it. Když do něj uživatel zadá nějaký znak, nebude už daný ovládací prvek prázdný.The same control is no longer blank as soon as the user types a character in it. Některé zdroje dat můžou ukládat a vracet hodnoty NULL, které se v PowerApps znázorňují jako prázdné.Some data sources can store and return NULL values, which are represented in PowerApps as blank.

Poznámka: Momentálně se ukládání prázdných hodnot podporuje jenom u místních kolekcí.Note: At this time, storing blank values is supported only for local collections. Víme, že řada zdrojů dat podporuje prázdné hodnoty (NULL), a pracujeme na odstranění tohoto omezení.We know that many data sources support blank (NULL) values, and we're working to lift this limitation.

Jakákoli vlastnost nebo počítaná hodnota může být prázdná.Any property or calculated value can be blank. Logická hodnota například obsahuje obvykle jednu z těchto dvou hodnot: true nebo false.For example, a Boolean value normally has one of two values: true or false. Kromě těchto dvou ale může být také prázdná.But in addition to these two, it can also be blank. Je to podobné jako v Microsoft Excelu, kde buňka listu je na začátku prázdná, ale může mimo jiné uchovávat i hodnotu PRAVDA nebo NEPRAVDA.This is similar to Microsoft Excel, where a worksheet cell starts out as blank but can hold the values TRUE or FALSE, among others. Kdykoli lze obsah buňky odebrat a obnovit tak prázdný stav buňky.At any time, the contents of the cell can be removed, and it would return to a blank state.

Prázdné tabulky jsou takové tabulky, které neobsahují žádné záznamy.Empty is specific to tables that contain no records. Struktura tabulky může být neporušená a obsahovat názvy sloupců, ale žádná data v tabulce nejsou.The table structure may be intact, complete with column names, but no data is in the table. Tabulka může být napřed prázdná, pak se do ní umístí záznamy, takže nebude prázdná, a pak se tyto záznamy odeberou a bude znovu prázdná.A table may start as empty, take on records and no longer be empty, and then have the records removed and again be empty.

PopisDescription

Funkce Blank vrací prázdnou hodnotu.The Blank function returns a blank value. Používá se k ukládání hodnot NULL do zdroje dat, který tyto hodnoty podporuje. V podstatě to znamená, že se všechny hodnoty z daného pole odeberou.Use this to store a NULL value in a data source that supports these values, effectively removing any value from the field.

Funkce IsBlank testuje, jestli je hodnota prázdná.The IsBlank function tests for a blank value. Prázdné hodnoty se vyskytují například v těchto situacích:Blank values are found in situations such as these:

  • Hodnota vrácená z funkce BlankThe return value from the Blank function.
  • Ve vlastnosti ovládacího prvku není nastavený žádný vzorec.A control property has no formula set for it.
  • V ovládacím prvku typu textový vstup není zadaná žádná hodnota nebo v seznamu není vybraná žádná položka.No value is typed into a text-input control, or no selection is made in a listbox. Pomocí funkce IsBlank je možné zobrazovat upozornění pro uživatele, že pole je povinné.You can use IsBlank to provide feedback that a field is required.
  • Řetězec, který neobsahuje žádné znaky, má při použití funkce Len hodnotu 0.A string that contains no characters has a Len of 0.
  • Došlo k chybě ve funkci.An error occurred in a function. Často se stává, že některý argument funkce není platný.Often, one of the arguments to the function wasn't valid. Řada funkcí vrací prázdnou hodnotu, pokud je hodnota argumentu prázdná.Many functions return blank if the value of an argument is blank.
  • Připojené zdroje dat, například SQL Server, můžou používat hodnoty null.Connected data sources, such as SQL Server, may use "null" values. Tyto hodnoty se v PowerApps zobrazují jako prázdné.These values appear as blank in PowerApps.
  • Část Jinak ve funkci If nebyla zadána a všechny podmínky se vyhodnotily jako false.The else portion of an If function wasn't specified, and all conditions were false.
  • Použili jste funkci Update, ale neurčili jste hodnotu pro všechny sloupce.You used the Update function but didn't specify a value for all columns. V důsledku toho se do sloupců, které jste neurčili, nevložily žádné hodnoty.As a result, no values were placed in the columns that you didn't specify.

Funkce Coalesce vyhodnocuje svoje argumenty podle pořadí a vrací první hodnotu, která není prázdná.The Coalesce function evaluates its arguments in order and returns the first value that isn't blank. Používá se k nahrazení prázdné hodnoty jinou hodnotou, přičemž hodnoty, které nejsou prázdné, se ponechají beze změn.Use this function to replace a blank value with a different value but leave non-blank values unchanged. Pokud jsou všechny argumenty prázdné, vrátí funkce prázdnou hodnotu.If all of the arguments are blank, then the function returns blank. Všechny argumenty funkce Coalesce musí být stejného typu. Není možné kombinovat například čísla a textové řetězce.All arguments to Coalesce must be of the same type; for example, you can't mix numbers with text strings. Funkce Coalesce( hodnota1; hodnota2 ) je stručnějším ekvivalentem funkce If( IsBlank( hodnota1 ) hodnota1; hodnota2 ), který nevyžaduje, aby se hodnota1 vyhodnocovala dvakrát.Coalesce( value1, value2 ) is the more concise equivalent of If( IsBlank( value1 ) value1, value2 ) and doesn't require value1 to be evaluated twice.

Funkce IsEmpty testuje, jestli tabulka obsahuje nějaké záznamy.The IsEmpty function tests whether a table contains any records. Je ekvivalentem k použití funkce CountRows a následné kontrole, jestli je výsledkem nula.It's equivalent to using the CountRows function and checking for zero. Zkombinováním funkce IsEmpty s funkcí Errors můžete vyhledávat chyby ve zdroji dat.You can check for data-source errors by combining IsEmpty with the Errors function.

Hodnota vrácená z funkce IsBlank i z funkce IsEmpty je logická hodnota true nebo false.The return value for both IsBlank and IsEmpty is a Boolean true or false.

SyntaxeSyntax

Blank()Blank()

Coalesce( Hodnota1 [; Hodnota2; ... ] )Coalesce( Value1 [, Value2, ... ] )

  • Hodnoty – povinné.Value(s) – Required. Hodnoty, které se mají testovat.Values to test. Každá hodnota se vyhodnocuje podle pořadí až do nalezení hodnoty, která není prázdná.Each value is evaluated in order until a non-blank value is found. Hodnoty za první hodnotou, která není prázdná, se nevyhodnocují.Values after the first non-blank value aren't evaluated.

IsBlank( Hodnota )IsBlank( Value )

  • Hodnota – povinné.Value – Required. Hodnota, která se má testovatValue to test.

IsEmpty( Tabulka )IsEmpty( Table )

  • Tabulka – povinné.Table - Required. Tabulka, ve které se má testovat výskyt záznamů.Table to test for records.

PříkladyExamples

PrázdnéBlank

Poznámka: Následující příklad momentálně funguje jenom pro místní kolekce.NOTE: At this time, the following example only works for local collections. Víme, že řada zdrojů dat podporuje prázdné hodnoty (NULL), a pracujeme na odstranění tohoto omezení.We know that many data sources support blank (NULL) values and We are working to lift this limitation.

  1. Vytvořte aplikaci od začátku a přidejte ovládací prvek Tlačítko.Create an app from scratch, and add a Button control.
  2. Do vlastnosti OnSelect tohoto tlačítka nastavte tento vzorec:Set the button's OnSelect property to this formula:

    ClearCollect( Cities; { Name: "Seattle"; Weather: "Rainy" } )ClearCollect( Cities, { Name: "Seattle", Weather: "Rainy" } )

  3. Zobrazte náhled aplikace, klikněte nebo klepněte na tlačítko, které jste přidali, a pak zavřete náhled.Preview your app, click or tap the button that you added, and then close Preview.
  4. V nabídce Soubor klikněte nebo klepněte na Kolekce.On the File menu, click or tap Collections.

    Zobrazí se kolekce Cities, která zobrazuje jeden záznam s položkami Seattle a Rainy:The Cities collection appears, showing one record with "Seattle" and "Rainy":

    Kolekce zobrazující záznam s položkami Seattle a Rainy

  5. Klikněte nebo klepněte na šipku zpět a vraťte se do výchozího pracovního prostoru.Click or tap the back arrow to return to the default workspace.
  6. Přidejte ovládací prvek Popisek a pro jeho vlastnost Text nastavte tento vzorec:Add a Label control, and set its Text property to this formula:

    IsBlank( First( Cities ).Weather )IsBlank( First( Cities ).Weather )

    Popisek zobrazí hodnotu false, protože pole Weather obsahuje hodnotu (Rainy).The label shows false because the Weather field contains a value ("Rainy").

  7. Přidejte druhé tlačítko a nastavte jeho vlastnost OnSelect na tento vzorec:Add a second button, and set its OnSelect property to this formula:

    Patch( Cities; First( Cities ); { Weather: Blank() } )Patch( Cities, First( Cities ), { Weather: Blank() } )

  8. Zobrazte náhled aplikace, klikněte nebo klepněte na tlačítko, které jste přidali, a pak zavřete náhled.Preview your app, click or tap the button that you added, and then close Preview.

    Pole Weather prvního záznamu v kolekci Cities se nahradí prázdnou hodnotou, takže položka Rainy, která tam byla dříve, se odebere.The Weather field of the first record in Cities is replaced with a blank, removing the "Rainy" that was there previously.

    Kolekce zobrazující záznam s položkou Seattle a prázdným polem Weather

    Popisek zobrazí hodnotu true, protože pole Weather už neobsahuje hodnotu.The label shows true because the Weather field no longer contains a value.

CoalesceCoalesce

VzorecFormula PopisDescription VýsledekResult
Coalesce( Blank(); 1 )Coalesce( Blank(), 1 ) Testuje hodnotu vrácenou z funkce Blank, která vždycky vrací prázdnou hodnotu.Tests the return value from the Blank function, which always returns a blank value. První argument je prázdný, takže vyhodnocování pokračuje dalšími argumenty až do nalezení hodnoty, která není prázdná.Because the first argument is blank, evaluation continues with the next argument until a non-blank value is found. 11
Coalesce( Blank(); Blank(); Blank(); Blank(); 2; 3 )Coalesce( Blank(), Blank(), Blank(), Blank(), 2, 3 ) Funkce Coalesce začne na začátku seznamu argumentů a vyhodnocuje postupně každý argument až do nalezení hodnoty, která není prázdná.Coalesce starts at the beginning of the argument list and evaluates each argument in turn until a non-blank value is found. V tomto případě první čtyři argumenty vrací prázdnou hodnotu, takže vyhodnocování pokračuje pátým argumentem.In this case, the first four arguments all return blank, so evaluation continues to the fifth argument. Pátý argument má hodnotu, která není prázdná, takže vyhodnocování se tady zastaví.The fifth argument is non-blank, so evaluation stops here. Vrátí se hodnota pátého argumentu a šestý argument se nevyhodnocuje.The value of the fifth argument is returned, and the sixth argument isn't evaluated. 22

IsBlankIsBlank

  1. Vytvořte aplikaci od začátku, přidejte ovládací prvek typu textový vstup a dejte mu název FirstName.Create an app from scratch, add a text-input control, and name it FirstName.
  2. Přidejte popisek a do jeho vlastnosti Text nastavte tento vzorec:Add a label, and set its Text property to this formula:

    If( IsBlank( FirstName.Text ); "First Name is a required field." )If( IsBlank( FirstName.Text ), "First Name is a required field." )

    Ve výchozím nastavení je ve vlastnosti Text ovládacího prvku typu textový vstup nastavený řetězec "Text input".By default, the Text property of a text-input control is set to "Text input". Vlastnost obsahuje hodnotu, takže není prázdná a popisek nezobrazí žádnou zprávu.Because the property contains a value, it isn't blank, and the label doesn't display any message.

  3. Odeberte z ovládacího prvku typu textový vstup všechny znaky včetně všech mezer.Remove all the characters from the text-input control, including any spaces.

    Vlastnost Text už neobsahuje žádné znaky, takže je prázdná a funkce IsBlank( FirstName.Text ) bude mít hodnotu true.Because the Text property no longer contains any characters, it's blank, and IsBlank( FirstName.Text ) will be true. Zobrazí se zpráva, že pole je povinné.The required field message is displayed.

Informace o tom, jak provádět ověřování pomocí jiných nástrojů, najdete v tématech o funkci Validate a o práci se zdroji dat.For information about how to perform validation by using other tools, see the Validate function and working with data sources.

Další příklady:Other examples:

VzorecFormula PopisDescription VýsledekResult
IsBlank( Blank() )IsBlank( Blank() ) Testuje hodnotu vrácenou z funkce Blank, která vždycky vrací prázdnou hodnotu.Tests the return value from the Blank function, which always returns a blank value. truetrue
IsBlank( "" )IsBlank( "" ) Řetězec, který neobsahuje žádné znakyA string that contains no characters. truetrue
IsBlank( "Hello" )IsBlank( "Hello" ) Řetězec, který obsahuje jeden nebo více znakůA string that contains one or more characters. falsefalse
IsBlank( Libovolná kolekce )IsBlank( AnyCollection ) Kolekce existuje, a proto pro tuto funkci není prázdná, ani když neobsahuje žádné záznamy.Because the collection exists, it isn't blank, even if it doesn't contain any records. Pokud chcete zkontrolovat, jestli kolekce obsahuje záznamy, použijte místo toho funkci IsEmpty.To check for an empty collection, use IsEmpty instead. falsefalse
IsBlank( Mid( "Hello"; 17; 2 ) )IsBlank( Mid( "Hello", 17, 2 ) ) Počáteční znak pro funkci Mid je až za koncem řetězce.The starting character for Mid is beyond the end of the string. Výsledkem je prázdný řetězec.The result is an empty string. truetrue
IsBlank( If( false; false ) )IsBlank( If( false, false ) ) Funkce If bez argumentu ElseResult.An If function with no ElseResult. Podmínka má vždycky hodnotu false, takže tato funkce If vždycky vrátí prázdnou hodnotu.Because the condition is always false, this If always returns blank. truetrue

IsEmptyIsEmpty

  1. Vytvořte aplikaci od začátku a přidejte ovládací prvek Tlačítko.Create an app from scratch, and add a Button control.
  2. Do vlastnosti OnSelect tohoto tlačítka nastavte tento vzorec:Set the button's OnSelect property to this formula:

    Collect( IceCream; { Flavor: "Strawberry"; Quantity: 300 }; { Flavor: "Chocolate"; Quantity: 100 } )Collect( IceCream, { Flavor: "Strawberry", Quantity: 300 }, { Flavor: "Chocolate", Quantity: 100 } )

  3. Zobrazte náhled aplikace, klikněte nebo klepněte na tlačítko, které jste přidali, a pak zavřete náhled.Preview your app, click or tap the button that you added, and then close Preview.

    Vytvoří se kolekce s názvem IceCream, která obsahuje tato data:A collection named IceCream is created and contains this data:

    Tato kolekce má dva záznamy a není prázdná.This collection has two records and isn't empty. Funkce IsEmpty( IceCream ) vrátí hodnotu false a funkce CountRows( IceCream ) vrátí hodnotu 2.IsEmpty( IceCream ) returns false, and CountRows( IceCream ) returns 2.

  4. Přidejte druhé tlačítko a nastavte jeho vlastnost OnSelect na tento vzorec:Add a second button, and set its OnSelect property to this formula:

    Clear( IceCream )Clear( IceCream )

  5. Zobrazte náhled aplikace, klikněte nebo klepněte na druhé tlačítko a pak zavřete náhled.Preview your app, click or tap the second button, and then close Preview.

    Kolekce je teď prázdná:The collection is now empty:

    Funkce Clear odebere z kolekce všechny záznamy, takže výsledkem je prázdná kolekce.The Clear function removes all the records from a collection, resulting in an empty collection. Funkce IsEmpty( IceCream ) vrátí hodnotu true a funkce CountRows( IceCream ) vrátí hodnotu 0.IsEmpty( IceCream ) returns true, and CountRows( IceCream ) returns 0.

Pomocí funkce IsEmpty můžete také otestovat, jestli je vypočítaná tabulka prázdná, jak ukazují tyto příklady:You can also use IsEmpty to test whether a calculated table is empty, as these examples show:

VzorecFormula PopisDescription VýsledekResult
IsEmpty( [ 1; 2; 3 ] )IsEmpty( [ 1, 2, 3 ] ) Tabulka s jedním sloupcem obsahuje tři záznamy, takže není prázdná.The single-column table contains three records and, therefore, isn't empty. falsefalse
IsEmpty( [ ] )IsEmpty( [ ] ) Tabulka s jedním sloupcem neobsahuje žádné záznamy, takže je prázdná.The single-column table contains no records and is empty. truetrue
IsEmpty( Filter( [ 1; 2; 3 ]; Value > 5 ) )IsEmpty( Filter( [ 1, 2, 3 ], Value > 5 ) ) Tabulka s jedním sloupcem neobsahuje žádné hodnoty větší než 5.The single-column table contains no values that are greater than 5. Výsledek z funkce Filter neobsahuje žádné záznamy, takže je prázdný.The result from the filter doesn't contain any records and is empty. truetrue