Jagamisviis:


Funktsioonid Blank, Coalesce, IsBlank ja IsEmpty

Kehtib: lõuendirakendused Töölauavoogude Dataverse valemiveerud Mudelipõhised rakendused Power Platform CLI

Kontrollib, kas väärtus on tühi või tabel ei sisalda kirjeid, ja võimaldab luua väärtusi tühi.

Ülevaade

Tühi on kohatäide, mis tähistab väärtusi „väärtus puudub” või „teadmata väärtus”. Näiteks juhtelemendi Liitboks atribuutValitud on tühi, kui kasutaja pole teinud valikut. Paljud andmeallikad saavad salvestada ja tagastada NULL-väärtusi, mis on tähistatud Power Appsis kui tühi.

Suvaline atribuut või arvutatud väärtus Power Apps võib olla tühi. Näiteks on loogikaväärtusel tavaliselt üks kahest väärtusest: tõene või väär. Kuid lisaks neile kahele võib see olla ka tühi, mis näitab, et riik ei ole teada. See on sarnane Microsoft Exceliga, kus töölehe lahter käivitub ilma sisuta, tühjana, kuid võib mahutada väärtusi tõene või väär (muuhulgas). Lahtri sisu saab igal ajal uuesti tühjendada, tagastades selle tühjale olekule.

Tühi string viitab stringile, mis ei sisalda märke. Funktsioon Len tagastab sellise stringi jaoks nulli ja seda saab valemites kirjutada kahe kahekordse jutumärgina, mille vahel pole midagi "". Teatud juhtelemendid ja andmeallikad kasutavad tühja stringi, mis näitab, et väärtust pole. Rakenduse loomise lihtsustamiseks saavad funktsioonid IsBlank ja Coalesce testida nii väärtusi kui ka tühje stringe.

Funktsiooni IsEmpty kontekstis on tühi omane tabelitele, mis ei sisalda kirjeid. Tabeli struktuur võib olla terve, koos veergude nimedega, kuid tabelis pole andmeid. Tabel võib alata tühjana, võtta kirjeid ja mitte enam olla tühi ning seejärel eemaldada kirjed ja need uuesti tühjendada.

Märkus.

Oleme üleminekuperioodil. Seni väärtus tühi olnud kasutusel ka vigade teatamisel, mistõttu ei ole võimalik eristada "kehtivat väärtust" veast. Sel põhjusel toetatakse tühja väärtuse talletamist ainult kohalike kogumike jaoks. Tühjad väärtused saate talletada ka muudes andmeallikates, kui lülitate sisse valemtaseme tõrkehalduse eksperimentaalse funktsiooni asukohas Sätted>Tulevased funktsioonid>Eksperimentaalne. Töötame selle funktsiooni lõpuleviimiseks aktiivselt ja lõpetame vigadest tühjade väärtuste eraldamise.

Tühi

Kehtib: Lõuendirakendused Mudelipõhised rakendused Dataverse valemiveerud

Blank funktsioon tagastab tühja väärtuse. Selle abil saate talletada NULL-väärtuse andmeallikas, mis toetab neid väärtusi, eemaldades tegelikult kõik väärtused väljalt.

IsBlank

Kehtib: lõuendirakendused Mudelipõhised rakendused

Funktsioon IsBlank testib tühja väärtust või tühja stringi. Test sisaldab tühje stringe, et kergendada rakenduste loomist, kuna teatud andmeallikad ja juhtelemendid kasutavad tühja stringi, kui väärtust pole olemas. Tühja väärtuse blank testimiseks kastage if( Value = Blank(), ...IsBlank asemel. Funktsioon IsBlank ei pea tühje tabeleid tühjadeks ja tabeli testimiseks tuleks kasutada funktsiooni IsEmpty .

Olemasolevate rakenduste tõrkeotsingu lubamisel kaaluge rakenduse olemasoleva käitumise säilitamiseks IsBlank koos IsBlankOrError asendamist olemasoleva rakenduse olemusega. Enne tõrkekäsitluse kasutamist kasutati tühi väärtust, et tähistada nii andmebaasi nullväärtusi kui ka tõrkeväärtusi. Tõrkekäsitlus eraldab need kaks tühja rakendusse, mis võivad muuta olemasolevate rakenduste käitumist, mis kasutavad jätkuvaltIsBlank funktsiooni.

IsBlaugi tagastatav väärtus on tõene või väär.

Coalesce

Kehtib: lõuendirakendused Mudelipõhised rakendused

Coalesce hindab oma argumente järjekorras ja tagastab esimese väärtuse, mis pole tühi ega tühi string. Selle funktsiooni abil saate asendada tühja väärtuse või tühja stringi teistsuguse väärtusega, kuid jätke mitte-tühjad väärtused ja mittetühjad stringid muutmata. Kui kõik argumendid on tühjad või tühjad stringid, siis funktsioon tagastab põhja, muutes Coalesce teisendades tühjad stringid tühjaks väärtusteks.

Coalesce( value1, value2 ) on väärtuse If( Not IsBlank( value1 ), value1, Not IsBlank( value2 ), value2 ) kompaktsem ekvivalent ja ei vaja väärtust1 ega väärtust2, et seda teist korda hinnata. Funktsioon If tagastab tühja, kui ei ole "else" valemit, nagu selles olukorras siin.

Kõik funktsiooni Coalesce argumendid peavad olema sama tüüpi; nt te ei saa segada numbreid tekstistringidega. Coalesce tagastatud väärtu on seda tüüpi.

IsEmpty

Kehtib: lõuendirakendused Mudelipõhised rakendused

Funktsioon IsEmpty testib, kas tabel sisaldab kirjeid. See on samaväärne funktsiooni CountRows kasutamisega ja nulliga kontrollimisega. Saate kontrollida andmeallika tõrkeid, kombineerides funktsiooni IsEmpty funktsiooniga Errors.

Ontühi tagastatav Booleani väärtus on tõene või väär.

Süntaks

Blank()

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

  • Väärtus(ed) – nõutav. Väärtused testimiseks. Iga väärtust hinnatakse järjekorras, kuni leitakse väärtus, mis pole tühi, kuid mitte tühi string. Väärtusi pärast seda punkti ei hinnata.

IsBlank( Value )

  • Väärtus – Nõutav. Väärtus, mis testib väärtuse tühi või tühja stringi oemasolu.

IsEmpty( Table )

  • Tabel – nõutav. Tabel kirjete testimiseks.

Näited

Tühi

Märkus.

Praegu toimib järgmine näide ainult kohalike kogumike puhul. Tühjad väärtused saate talletada ka muudes andmeallikates, kui lülitate sisse valemtaseme tõrkehalduse eksperimentaalse funktsiooni asukohas Sätted>Tulevased funktsioonid>Eksperimentaalne. Töötame selle funktsiooni lõpuleviimiseks aktiivselt ja lõpetame vigadest väärtuste tüh eraldamise.

  1. Looge rakendus nullist ja lisage juhtelement Nupp.

  2. Määrake nupu atribuut OnSelect järgmisele valemile.

    ClearCollect( Cities, { Name: "Seattle", Weather: "Rainy" } )
    
  3. Rakenduse eelvaate kuvamiseks klõpsake või koputage lisatud nuppu ja siis sulgege eelvaade.

  4. Menüüs Fail klõpsake või koputage valikut Kogumikud.

    Kuvatakse kogumik Linnad, kus on kuvatud üks kirje sõnadega "Seattle" ja "vihmane".

    Kogumik kuvab Seattle'it vihmase ilmaga.

  5. Klõpsake või koputage tagasinoolt, et naasta vaiketööruumi.

  6. Lisage juhtelement silt ja seadke selle atribuudiks Tekst see valem:

    IsBlank( First( Cities ).Weather )
    

    Silt kuvab väärtust väär, sest väli Ilm sisaldab väärtust ("vihmane").

  7. Lisage teine nupp ja seadke selle väärtuseks OnSelect see valem:

    Patch( Cities, First( Cities ), { Weather: Blank() } )
    
  8. Rakenduse eelvaate kuvamiseks klõpsake või koputage lisatud nuppu ja siis sulgege eelvaade.

    Esimese kirje väli Ilm kogumikus Linnad asendatakse väärtusega tühi, eemaldades sealt eelneva väärtuse "vihmane".

    Kogumik kuvab Seattle'it tühja väljaga Ilm.

    Silt kuvab väärtust tõene, sest väli Ilm ei sisalda enam väärtust.

Coalesce

Valem Kirjeldus Tulem
Coalesce( Blank(), 1 ) Testib funktsiooni Blank, mis tagastab alati väärtuse tühi, tagastatavat väärtust. Kuna esimene argument on tühi, jätkub hindamine järgmise argumendiga, kuni leitakse väärtus mitte-tühi mittetühi string. 1
Coalesce( "", "2" ) Testib esimest argumenti, mis on tühi string. Kuna esimene argument on tühi string, jätkub hindamine järgmise argumendiga, kuni leitakse väärtus mitte-tühi ja mittetühi string. 2
Coalesce( Blank(), "", Blank(), "", "3", "4" ) Coalesce algab argumentide loendi alguses ja analüüsib iga argumenti järgemööda, kuni leitakse väärtus mitte-tühi ja mittetühi string. Sellisel juhul esimesed neli argumenti tagastavad väärtuse tühi või tühja stringi, seega hindamine läheb edasi viiendale argumendile. Viies argument on mitte-tühi ja mittetühi string, seega siinne hindamine peatub siin. Tagastatakse viienda argumendi väärtus ja kuuendat argumenti ei hinnata. 3
Coalesce( "" ) Testib esimest argumenti, mis on tühi string. Kuna esimene argument on tühi string ja rohkem argumente pole, tagastab funktsioon väärtuse tühi. tühi

IsBlank

  1. Looge nullist mõni rakendus, lisage juhtelement tekstisisend ja pange nimeks FirstName.

  2. Lisage silt ja määrake atribuut Text järgmisele valemile.

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

    Vaikimisi on juhtelemendi tekstisisendi atribuut Text seatud väärtusele tekstisisend. Kuna atribuut sisaldab väärtust, pole see tühi ja silt ei kuva ühtegi teadet.

  3. Eemaldage juhtelemendilt tekstisisend kõik tähemärgid, sh kõik tühikud.

    Kuna atribuut Text ei sisalda enam tähemärke, on see tühi string ja IsBlank( FirstName.Text ) on tõene. Kuvatakse nõutava välja sõnum.

Muude tööriistade abil valideerimise teostamise kohta vt Validate funktsioon ja töö andmeallikatega.

Muud näited:

Valem Kirjeldus Tulem
IsBlank( Blank() ) Testib funktsiooni Blank, mis tagastab alati väärtuse tühi, tagastatavat väärtust. tõene
IsBlank( "" ) String, mis ei sisalda tähemärke. tõene
IsBlank( "Hello" ) String, mis sisaldab ühte või mitut tähemärki. väär
IsBlank( AnyCollection ) Kuna kogum on olemas, pole see tühi, isegi kui see ei sisalda kirjeid. Tühja kogumi otsimiseks kasutage hoopis funktsiooni IsEmpty. väär
IsBlank( Mid( "Hello", 17, 2 ) ) Midi algustäht on väljaspool stringi lõppu. Tulemuseks tühi string. tõene
IsBlank( If( false, false ) ) Funktsioon If ilma ElseResultita. Kuna tingimus on alati väär, siis If tagastab alati väärtuse tühi. tõene

IsEmpty

  1. Looge rakendus nullist ja lisage juhtelement Nupp.

  2. Määrake nupu atribuut OnSelect järgmisele valemile.

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

  3. Rakenduse eelvaate kuvamiseks klõpsake või koputage lisatud nuppu ja siis sulgege eelvaade.

    Luuakse kogumik nimega IceCream, mis sisaldab järgmisi andmeid:

    Maasika- ja šokolaadimaitseline tabel kogusega 300 ja 100.

    See kollektsioon sisaldab kahte kirjet ja pole tühi. IsEmpty( IceCream ) tagastab väärtuse väär ja CountRows( IceCream ) tagastab väärtuse 2.

  4. Lisage teine nupp ja seadke selle atribuudiks OnSelect see valem:

    Clear( IceCream )

  5. Rakenduse eelvaate kuvamiseks klõpsake või koputage teist nuppu ja siis sulgege eelvaade.

    Kogumik on nüüd tühi.

    Maitseaine ja koguse tühja kollektsioonina kollektsioon.

    Funktsioonid Clear eemaldab kogumikust kõik kirjed, mille tulemiks on tühi kogumik. IsEmpty( IceCream ) tagastab väärtuse tõene ja CountRows( IceCream ) tagastab väärtuse 0.

Saate kasutada funktsiooni IsEmpty, et testida, kas arvutatud tabel on tühi, kuna need näited näitavad järgmist.

Valem Kirjeldus Tulem
IsEmpty( [ 1, 2, 3 ] ) Ühe veeruga tabel sisaldab kolme kirjet ja seetõttu pole see tühi. väär
IsEmpty( [ ] ) Ühe veeruga tabel ei sisalda ühtki kirjet ja seetõttu on tühi. tõene
IsEmpty( Filter( [ 1, 2, 3 ], Value > 5 ) ) Ühe veeruga tabel ei sisalda väärtusi, mis on suuremad kui 5. Filtri tulem ei sisalda kirjeid ja on tühi. tõene