Testar om ett värde är tomt eller en tabell inte innehåller poster och ger ett sätt att skapa tomma värden.

Översikt

Tom är en platshållare för "inget värde" eller "okänt värde." En indata-textruta är tom om användaren inte har angett några tecken i den. Samma kontroll är inte längre tom så fort användaren anger ett tecken i den. Vissa datakällor kan lagra och returnera NULL-värden som representeras i PowerApps som tomma.

Observera: just nu stöds lagring av tomma värden endast för lokala samlingar. 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.

En egenskap eller ett beräknat värde kan vara tomt. Till exempel har ett booleskt värde vanligtvis ett av två värden: sant eller falskt. Men utöver dessa två kan det också vara tomt. Detta liknar Microsoft Excel, där en cell i kalkylbladet börjar som tom men kan lagra värdena SANT eller FALSKT, bland annat. Innehållet i cellen kan tas bort när som helst, och den skulle gå tillbaka till ett tomt tillstånd.

Tomt är specifikt för tabeller som inte innehåller poster. Tabellstrukturen kan vara orörd, med kolumnnamn, men inga data finns i tabellen. En tabell kan starta som tom, få poster och inte längre vara tom och posterna kan tas bort och den är tom igen.

Beskrivning

Funktionen Blank returnerar ett tomt värde. 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.

Funktionen IsBlank testar efter ett tomt värde. Tomma värden finns i situationer som dessa:

  • Returvärdet från funktionen Blank.
  • En kontrollegenskap har ingen formel angiven.
  • Inget värde har skrivits i en indata-textkontroll eller ingen markering har gjorts i en listruta. Du kan använda IsBlank för att ge den feedback som krävs för ett fält.
  • En sträng som inte innehåller några tecken har en Len (längd) på 0.
  • Ett fel uppstod i en funktion. Ofta var ett argument till funktionen inte giltigt. Många funktioner returnerar tomt om värdet för ett argument är tomt.
  • Anslutna datakällor, till exempel SQL Server, kan använda null-värden. Dessa värden visas som tomma i PowerApps.
  • Delen annat av funktionen If har inte angetts och alla villkor var falska.
  • Du använde funktionen Update men angav inte ett värde för alla kolumner. Därför placerades inga värden i de kolumner som du inte angav.

Funktionen IsEmpty testar om en tabell innehåller alla poster. Den motsvarar användning av funktionen CountRows och söker efter noll. Du kan använda IsEmpty för att söka efter fel för datakällan genom att kombinera den med funktionen Errors.

Det returnerade värdet för såväl IsBlank som IsEmpty är ett booleskt värde sant eller falskt.

Syntax

Blank()

IsBlank( Value )

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

IsEmpty( Table )

  • Table – obligatoriskt. Tabell som ska testas för poster.

Exempel

Blank

Obs: Just nu fungerar följande exempel endast för lokala samlingar. 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.

  1. Skapa en app från början och lägg till en knappkontroll.

  2. Ställ in knappens egenskap OnSelect enligt den här formeln:

    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.

  4. Klicka eller tryck på Samlingar i Arkiv-menyn.

    Samlingen Cities visas med en post med "Seattle" och "Rainy":

    Samling med Seattle och Rainy

  5. Klicka eller tryck på bakåtpilen för att återgå till standardarbetsytan.

  6. Lägg till kontrollen Etikett och ange egenskapen Text till följande formel:

    IsBlank( First( Cities ).Weather )

    Etiketten visar falskt eftersom fältet Weather innehåller ett värde ("Rainy").

  7. Lägg till en knapp till och ge dess egenskap OnSelect följande formel:

    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.

    Fältet Weather i den första posten i Cities ersätts med tomt, vilket tar bort "Rainy" som fanns där tidigare.

    Samling med Seattle och ett tomt Weather-fält

    Etiketten visar sant eftersom fältet Weather inte längre innehåller ett värde.

IsBlank

  1. Skapa en app från grunden, lägg till en kontroll av indata-text och döp till FirstName.

  2. Lägg till en etikett och ange egenskapen Text till följande formel:

    Om (IsBlank (FirstName.Text) "FirstName är ett obligatoriskt fält.")

    Som standard anges Textkontrollen för indata-text till "Indata-text". Eftersom egenskapen innehåller ett värde är den inte tom och etikettskontrollen visar inte några meddelanden.

  3. Ta bort alla tecken från den indata-textkontrollen, inklusive blanksteg.

    Eftersom textegenskapen inte längre innehåller några tecken, kommer den att vara tom och IsBlank (FirstName.Text) kommer att vara sant. Obligatoriskt fältmeddelandet visas.

Information om hur du utför verifiering genom att använda andra verktyg finns i funktionen Validate och Arbeta med datakällor.

Andra exempel:

Formel Beskrivning Resultat
IsBlank( Blank() ) Testar returvärde från funktionen Blank som returnerar alltid ett tomt värde. true
IsBlank( "" ) En sträng som inte innehåller några tecken. true
IsBlank ("Hello") En sträng som innehåller ett eller flera tecken. false
IsBlank( AnyCollection ) Eftersom samlingen finns, är den inte tom, även om den inte innehåller några poster. Om du vill söka efter en tom samling använd IsEmpty i stället. false
IsBlank( Mid( "Hello", 17, 2 ) ) Det första tecknet för Mid är utanför slutet av strängen. Resultatet är en tom sträng. true
IsBlank( Om( falskt, falskt ) ) En funktion If utan ElseResult. Eftersom villkoret alltid är falskt, returnerar detta If alltid tom. true

IsEmpty

  1. Skapa en app från början och lägg till en knappkontroll.

  2. Ställ in knappens egenskap OnSelect enligt den här formeln:

    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.

    En samling som heter IceCream skapas och innehåller dessa data:

    Den här samlingen har två poster och är inte tom. IsEmpty (IceCream) returnerar falskt, och CountRows (IceCream) returnerar 2.

  4. Lägg till en knapp till och ge dess egenskap OnSelect följande formel:

    Clear( IceCream )

  5. Förhandsgranska din app, klicka eller tryck på knappen som du har lagt till och stäng Förhandsgranskning.

    Samlingen är nu tom:

    Funktionen Clear tar bort alla poster från en samling, vilket resulterar i en tom samling. IsEmpty (IceCream) returnerar sant, och CountRows (IceCream) returnerar 0.

Du kan också använda IsEmpty för att testa om en beräknad tabell är tomt, alltså:

Formel Beskrivning Resultat
IsEmpty( [ 1, 2, 3 ] ) Tabellen med en kolumn innehåller tre poster och är därför inte tom. false
IsEmpty( [ ] ) Tabellen med en kolumn innehåller inte några poster och är tom. true
IsEmpty( Filter( [ 1, 2, 3 ], värde > 5 ) ) Tabellen med en kolumn innehåller inte några värden som är större än 5. Resultatet från filtret innehåller inte några poster och är tomt. true