Funktionerna Blank, Coalesce, IsBlank och IsEmptyBlank, Coalesce, IsBlank, and IsEmpty functions in PowerApps

Testar om ett värde är tomt eller en tabell inte innehåller poster och ger ett sätt att skapa tomma värden.Tests whether a value is blank or a table contains no records, and provides a way to create blank values.

ÖversiktOverview

Tom är en platshållare för "inget värde" eller "okänt värde."Blank is a placeholder for "no value" or "unknown value." En indata-textruta är tom om användaren inte har angett några tecken i den.A Text input control is blank if the user hasn't typed any characters in it. Samma kontroll är inte längre tom så fort användaren anger ett tecken i den.The same control is no longer blank as soon as the user types a character in it. Vissa datakällor kan lagra och returnera NULL-värden som representeras i PowerApps som tomma.Some data sources can store and return NULL values, which are represented in PowerApps as blank.

Observera: just nu stöds lagring av tomma värden endast för lokala samlingar.Note: At this time, storing blank values is supported only for local collections. Vi vet att många datakällor stöder tomma (NULL) värden och vi arbetar på att lösa den här begränsningen.We know that many data sources support blank (NULL) values, and we're working to lift this limitation.

En egenskap eller ett beräknat värde kan vara tomt.Any property or calculated value can be blank. Till exempel har ett booleskt värde vanligtvis ett av två värden: sant eller falskt.For example, a Boolean value normally has one of two values: true or false. Men utöver dessa två kan det också vara tomt.But in addition to these two, it can also be blank. Detta liknar Microsoft Excel, där en cell i kalkylbladet börjar som tom men kan lagra värdena SANT eller FALSKT, bland annat.This is similar to Microsoft Excel, where a worksheet cell starts out as blank but can hold the values TRUE or FALSE, among others. Innehållet i cellen kan tas bort när som helst, och den skulle gå tillbaka till ett tomt tillstånd.At any time, the contents of the cell can be removed, and it would return to a blank state.

Tomt är specifikt för tabeller som inte innehåller poster.Empty is specific to tables that contain no records. Tabellstrukturen kan vara orörd, med kolumnnamn, men inga data finns i tabellen.The table structure may be intact, complete with column names, but no data is in the table. En tabell kan starta som tom, få poster och inte längre vara tom och posterna kan tas bort och den är tom igen.A table may start as empty, take on records and no longer be empty, and then have the records removed and again be empty.

BeskrivningDescription

Funktionen Blank returnerar ett tomt värde.The Blank function returns a blank value. Används för att lagra ett nullvärde i en datakälla som har stöd för dessa värden, vilket tar bort ett värde från fältet.Use this to store a NULL value in a data source that supports these values, effectively removing any value from the field.

Funktionen IsBlank testar efter ett tomt värde.The IsBlank function tests for a blank value. Tomma värden finns i situationer som dessa:Blank values are found in situations such as these:

  • Returvärdet från funktionen Blank.The return value from the Blank function.
  • En kontrollegenskap har ingen formel angiven.A control property has no formula set for it.
  • Inget värde har skrivits i en indata-textkontroll eller ingen markering har gjorts i en listruta.No value is typed into a text-input control, or no selection is made in a listbox. Du kan använda IsBlank för att ge den feedback som krävs för ett fält.You can use IsBlank to provide feedback that a field is required.
  • En sträng som inte innehåller några tecken har en Len (längd) på 0.A string that contains no characters has a Len of 0.
  • Ett fel uppstod i en funktion.An error occurred in a function. Ofta var ett argument till funktionen inte giltigt.Often, one of the arguments to the function wasn't valid. Många funktioner returnerar tomt om värdet för ett argument är tomt.Many functions return blank if the value of an argument is blank.
  • Anslutna datakällor, till exempel SQL Server, kan använda null-värden.Connected data sources, such as SQL Server, may use "null" values. Dessa värden visas som tomma i PowerApps.These values appear as blank in PowerApps.
  • Delen annat av funktionen If har inte angetts och alla villkor var falska.The else portion of an If function wasn't specified, and all conditions were false.
  • Du använde funktionen Update men angav inte ett värde för alla kolumner.You used the Update function but didn't specify a value for all columns. Därför placerades inga värden i de kolumner som du inte angav.As a result, no values were placed in the columns that you didn't specify.

Funktionen Coalesce utvärderar argumenten i ordning och returnerar det första värdet som inte är tom.The Coalesce function evaluates its arguments in order and returns the first value that isn't blank. Använd den här funktionen för att ersätta värdet tom med ett annat värde men lämna värden som inte är tomma oförändrade.Use this function to replace a blank value with a different value but leave non-blank values unchanged. Om alla argument är tomma returnerar funktionen tom.If all of the arguments are blank, then the function returns blank. Alla argument för Coalesce måste vara av samma typ, t.ex, du kan inte blanda siffror med textsträngar.All arguments to Coalesce must be of the same type; for example, you can't mix numbers with text strings. Coalesce (value1, value2) är en kortare variant av If(IsBlank (value1) value1, value2) och värdet value1 behöver inte utvärderas två gånger.Coalesce( value1, value2 ) is the more concise equivalent of If( IsBlank( value1 ) value1, value2 ) and doesn't require value1 to be evaluated twice.

Funktionen IsEmpty testar om en tabell innehåller alla poster.The IsEmpty function tests whether a table contains any records. Den motsvarar användning av funktionen CountRows och söker efter noll.It's equivalent to using the CountRows function and checking for zero. Du kan använda IsEmpty för att söka efter fel för datakällan genom att kombinera den med funktionen Errors.You can check for data-source errors by combining IsEmpty with the Errors function.

Det returnerade värdet för såväl IsBlank som IsEmpty är ett booleskt värde sant eller falskt.The return value for both IsBlank and IsEmpty is a Boolean true or false.

SyntaxSyntax

Blank()Blank()

Coalesce( Value1 [, Value2, ... ] )Coalesce( Value1 [, Value2, ... ] )

  • Value(s) – obligatoriskt.Value(s) – Required. Värden att testa.Values to test. Varje värde ska utvärderas i ordning tills ett värde som inte är tomt hittas.Each value is evaluated in order until a non-blank value is found. Värden efter det första värdet som inte är tomt utvärderas inte.Values after the first non-blank value aren't evaluated.

IsBlank( Value )IsBlank( Value )

  • Value – Krävs.Value – Required. Värdet som ska testas.Value to test.

IsEmpty( Table )IsEmpty( Table )

  • Table – obligatoriskt.Table - Required. Tabell som ska testas för poster.Table to test for records.

ExempelExamples

BlankBlank

Obs: Just nu fungerar följande exempel endast för lokala samlingar.NOTE: At this time, the following example only works for local collections. Vi vet att många datakällor stöder tomma (NULL) värden och vi arbetar på att lösa den här begränsningen.We know that many data sources support blank (NULL) values and We are working to lift this limitation.

  1. Skapa en app från början och lägg till en knappkontroll.Create an app from scratch, and add a Button control.
  2. Ställ in knappens egenskap OnSelect enligt den här formeln:Set the button's OnSelect property to this formula:

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

  3. Förhandsgranska din app, klicka eller tryck på knappen som du har lagt till och stäng Förhandsgranskning.Preview your app, click or tap the button that you added, and then close Preview.
  4. Klicka eller tryck på Samlingar i Arkiv-menyn.On the File menu, click or tap Collections.

    Samlingen Cities visas med en post med "Seattle" och "Rainy":The Cities collection appears, showing one record with "Seattle" and "Rainy":

    Samling med Seattle och Rainy

  5. Klicka eller tryck på bakåtpilen för att återgå till standardarbetsytan.Click or tap the back arrow to return to the default workspace.
  6. Lägg till kontrollen Etikett och ange egenskapen Text till följande formel:Add a Label control, and set its Text property to this formula:

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

    Etiketten visar falskt eftersom fältet Weather innehåller ett värde ("Rainy").The label shows false because the Weather field contains a value ("Rainy").

  7. Lägg till en knapp till och ge dess egenskap OnSelect följande formel: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. Förhandsgranska din app, klicka eller tryck på knappen som du har lagt till och stäng Förhandsgranskning.Preview your app, click or tap the button that you added, and then close Preview.

    Fältet Weather i den första posten i Cities ersätts med tomt, vilket tar bort "Rainy" som fanns där tidigare.The Weather field of the first record in Cities is replaced with a blank, removing the "Rainy" that was there previously.

    Samling med Seattle och ett tomt Weather-fält

    Etiketten visar sant eftersom fältet Weather inte längre innehåller ett värde.The label shows true because the Weather field no longer contains a value.

CoalesceCoalesce

FormelFormula BeskrivningDescription ResultatResult
Coalesce( Blank(), 1 )Coalesce( Blank(), 1 ) Testar returvärde från funktionen Blank som returnerar alltid ett tomt värde.Tests the return value from the Blank function, which always returns a blank value. Eftersom det första argumentet är tom fortsätter utvärderingen med nästa argument tills ett värde som inte är tomt hittas.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 ) Coalesce startar i början av argumentlistan och utvärderar varje argument i tur och ordning tills ett värde som inte är tomt hittas.Coalesce starts at the beginning of the argument list and evaluates each argument in turn until a non-blank value is found. I så fall returnerar de fyra första argumenten tom, så utvärdering fortsätter att femte argumentet.In this case, the first four arguments all return blank, so evaluation continues to the fifth argument. Det femte argumentet är icke-tomt, så utvärdering slutar här.The fifth argument is non-blank, so evaluation stops here. Värdet för det femte argumentet returneras och det sjätte argumentet utvärderas inte.The value of the fifth argument is returned, and the sixth argument isn't evaluated. 22

IsBlankIsBlank

  1. Skapa en app från grunden, lägg till en kontroll av indata-text och döp till FirstName.Create an app from scratch, add a text-input control, and name it FirstName.
  2. Lägg till en etikett och ange egenskapen Text till följande formel:Add a label, and set its Text property to this formula:

    Om (IsBlank (FirstName.Text) "FirstName är ett obligatoriskt fält.")If( IsBlank( FirstName.Text ), "First Name is a required field." )

    Som standard anges Textkontrollen för indata-text till "Indata-text".By default, the Text property of a text-input control is set to "Text input". Eftersom egenskapen innehåller ett värde är den inte tom och etikettskontrollen visar inte några meddelanden.Because the property contains a value, it isn't blank, and the label doesn't display any message.

  3. Ta bort alla tecken från den indata-textkontrollen, inklusive blanksteg.Remove all the characters from the text-input control, including any spaces.

    Eftersom textegenskapen inte längre innehåller några tecken, kommer den att vara tom och IsBlank (FirstName.Text) kommer att vara sant.Because the Text property no longer contains any characters, it's blank, and IsBlank( FirstName.Text ) will be true. Obligatoriskt fältmeddelandet visas.The required field message is displayed.

Information om hur du utför verifiering genom att använda andra verktyg finns i funktionen Validate och Arbeta med datakällor.For information about how to perform validation by using other tools, see the Validate function and working with data sources.

Andra exempel:Other examples:

FormelFormula BeskrivningDescription ResultatResult
IsBlank( Blank() )IsBlank( Blank() ) Testar returvärde från funktionen Blank som returnerar alltid ett tomt värde.Tests the return value from the Blank function, which always returns a blank value. truetrue
IsBlank( "" )IsBlank( "" ) En sträng som inte innehåller några tecken.A string that contains no characters. truetrue
IsBlank ("Hello")IsBlank( "Hello" ) En sträng som innehåller ett eller flera tecken.A string that contains one or more characters. falsefalse
IsBlank( AnyCollection )IsBlank( AnyCollection ) Eftersom samlingen finns, är den inte tom, även om den inte innehåller några poster.Because the collection exists, it isn't blank, even if it doesn't contain any records. Om du vill söka efter en tom samling använd IsEmpty i stället.To check for an empty collection, use IsEmpty instead. falsefalse
IsBlank( Mid( "Hello", 17, 2 ) )IsBlank( Mid( "Hello", 17, 2 ) ) Det första tecknet för Mid är utanför slutet av strängen.The starting character for Mid is beyond the end of the string. Resultatet är en tom sträng.The result is an empty string. truetrue
IsBlank( Om( falskt, falskt ) )IsBlank( If( false, false ) ) En funktion If utan ElseResult.An If function with no ElseResult. Eftersom villkoret alltid är falskt, returnerar detta If alltid tom.Because the condition is always false, this If always returns blank. truetrue

IsEmptyIsEmpty

  1. Skapa en app från början och lägg till en knappkontroll.Create an app from scratch, and add a Button control.
  2. Ställ in knappens egenskap OnSelect enligt den här formeln: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. Förhandsgranska din app, klicka eller tryck på knappen som du har lagt till och stäng Förhandsgranskning.Preview your app, click or tap the button that you added, and then close Preview.

    En samling som heter IceCream skapas och innehåller dessa data:A collection named IceCream is created and contains this data:

    Den här samlingen har två poster och är inte tom.This collection has two records and isn't empty. IsEmpty (IceCream) returnerar falskt, och CountRows (IceCream) returnerar 2.IsEmpty( IceCream ) returns false, and CountRows( IceCream ) returns 2.

  4. Lägg till en knapp till och ge dess egenskap OnSelect följande formel:Add a second button, and set its OnSelect property to this formula:

    Clear( IceCream )Clear( IceCream )

  5. Förhandsgranska din app, klicka eller tryck på knappen som du har lagt till och stäng Förhandsgranskning.Preview your app, click or tap the second button, and then close Preview.

    Samlingen är nu tom:The collection is now empty:

    Funktionen Clear tar bort alla poster från en samling, vilket resulterar i en tom samling.The Clear function removes all the records from a collection, resulting in an empty collection. IsEmpty (IceCream) returnerar sant, och CountRows (IceCream) returnerar 0.IsEmpty( IceCream ) returns true, and CountRows( IceCream ) returns 0.

Du kan också använda IsEmpty för att testa om en beräknad tabell är tomt, alltså:You can also use IsEmpty to test whether a calculated table is empty, as these examples show:

FormelFormula BeskrivningDescription ResultatResult
IsEmpty( [ 1, 2, 3 ] )IsEmpty( [ 1, 2, 3 ] ) Tabellen med en kolumn innehåller tre poster och är därför inte tom.The single-column table contains three records and, therefore, isn't empty. falsefalse
IsEmpty( [ ] )IsEmpty( [ ] ) Tabellen med en kolumn innehåller inte några poster och är tom.The single-column table contains no records and is empty. truetrue
IsEmpty( Filter( [ 1, 2, 3 ], värde > 5 ) )IsEmpty( Filter( [ 1, 2, 3 ], Value > 5 ) ) Tabellen med en kolumn innehåller inte några värden som är större än 5.The single-column table contains no values that are greater than 5. Resultatet från filtret innehåller inte några poster och är tomt.The result from the filter doesn't contain any records and is empty. truetrue