Funkcijas Blank, Coalesce, IsBlank un IsEmpty
Attiecas uz: Pamatnes programmām Darbvirsmas plūsmas Dataverse Formulu kolonnas Modeļa vadītas programmas Power Pages Power Platform CLI
Pārbauda, vai vērtība ir tukša, vai tabula satur ierakstus, un nodrošina veidu, kādā izveidot tukšas vērtības.
Pārskats
Tukšs ir vietturis vienumam "nav vērtības" vai "nav zināmas vērtības". Piemēram, kombinētā lodziņa vadīklas rekvizīts Atlasīts ir tukšs , ja lietotājs nav veicis atlasi. Daudzi datu avoti var glabāt un atgriezt NULL vērtības, kas tiek attēlotas programmā Power Apps kā tukšas.
Jebkurš rekvizīts vai aprēķinātā vērtība programmā Power Apps var būt tukša. Piemēram, Būla vērtībai parasti ir viena vai divas vērtības: true vai false. Taču līdztekus šīm divām, tā var būt arī tukša, norādot, ka statuss nav zināms. Līdzīgi ir ar Microsoft Excel, kurā darblapas šūna no sākuma ir tukša un bez satura, bet tajā (cita starpā) var būt vērtības TRUE vai FALSE. Jebkurā laikā varat vēlreiz notīrīt šūnas saturu, to atgriežot tukšā stāvoklī.
Tukša virkne attiecas uz virkni, kurā nav rakstzīmju. Šī Len funkcija šādai virknei atgriež nulli, un to var pierakstīt formulās kā divas dubultās pēdiņas, kurām pa vidu nekā nav ""
. Dažas vadīklas un datu avoti izmanto tukšu virkni, lai norādītu uz nosacījumu "nav vērtības". Lai vienkāršotu programmas izveidi, funkcijas IsBlank un Coalesce pārbauda gan tukšās vērtības, gan tukšās virknes.
Funkcijas IsEmpty kontekstā empty ir specifiska tabulām, kurās nav ierakstu. Tabulas struktūra varētu būt neskarta, pilna ar kolonnu nosaukumiem, taču tabulā nav datu. Tabula sākotnēji varētu būt tukša, iegūt ierakstus un vairs nebūt tukša, un pēc tam tai var tikt dzēsti ieraksti un tā atkal būtu tukša.
Note
Esam pārejas posmā. Līdz šim tukšā vērtība ir izmantota arī, lai ziņotu par kļūdām, padarot neiespējamu derīgas "nav vērtības" diferencēšanu no kļūdas. Tāpēc šajā laikā tukšo vērtību glabāšana tiek atbalstīta vienīgi lokālajām kolekcijām. Varat uzglabāt tukšas vērtības citos datu avotos, ja ieslēdzat eksperimentālo līdzekli Formulas līmeņa kļūdu pārvaldība sadaļā Iestatījumi>Gaidāmie līdzekļi>Eksperimentāli. Mēs aktīvi strādājam pie tā, lai pabeigtu šo līdzekli un noslēgtu atbilstošu tukšo vērtību nošķiršanu no kļūdām.
Tukša
Attiecas uz: Audekla programmām Modeļa vadītu programmu Dataverse formulu kolonnas
Blank funkcija atgriež tukšu vērtību. Izmantojiet to, lai glabātu NULL vērtību datu avotā, kas atbalsta šīs vērtības, efektīvi noņemot jebkādu vērtību no lauka.
IsBlank
Attiecas uz: Pamatnes programmām Modeļa vadītas programmas
Funkcija IsBlank pārbauda tukšās vērtības vai tukšās virknes. Šajā pārbaudē ir iekļautas tukšās virknes, lai atvieglotu programmas izveidi, jo daži datu avoti un vadīklas izmanto tukšu virkni, kad nav nevienas vērtības. Lai pārbaudītu tieši tukšās vērtības, izmantojiet if( Value = Blank(), ...
, nevis IsBlank. Funkcija IsBlank uzskata, ka tukšas tabulas nav tukšas, un tabulas testēšanai jāizmanto IsEmpty .
Iespējojot kļūdu apstrādi esošajās programmās, apsveriet iespēju aizvietot IsBlank ar IsBlankOrError, lai saglabātu esošo programmas darbību. Pirms kļūdu apstrādes pievienošanas tika izmantota tukša vērtība, lai attēlotu vērtības Null no datu bāzēm un kļūdu vērtības. Kļūdu apstrāde atdala šos divus tukšos skaidrojumus, kas var mainīt to esošo programmu darbību, kuras turpina lietot IsBlank.
Atgrieztā funkcijas IsBlank vērtība ir Būla patiess vai aplams.
Coalesce
Attiecas uz: Pamatnes programmām Modeļa vadītas programmas
Funkcija Coalesce novērtē savus argumentus pēc kārtas un atgriež pirmo vērtību, kas nav tukša vai tukša virkne. Izmantojiet šo funkciju, lai aizstātu tukšu vērtību vai tukšu virkni ar citu vērtību, taču atstātu vērtības, kas navtukšas un virkņu vērtības, kas nav tukšas, nemainītas. Ja visi argumenti ir tukši vai tukšas virknes, funkcija atgriež tukšu, liekot Coalesce labā ziņā konvertēt tukšās virknes par tukšām vērtībām.
Coalesce( value1, value2 )
ir kodolīgāks ekvivalents If( Not IsBlank( value1 ), value1, Not IsBlank( value2 ), value2 )
un neprasa, lai vērtība1 un vērtība2 tiktu novērtēta divreiz. Šī If funkcija atgriež tukšu, ja nav formulas "citādi", kā tas ir šajā gadījumā.
Visiem Coalesce argumentiem ir jābūt viena veida, piemēram, nevarat jaukt skaitļus ar teksta virknēm. Šīs biežāk lietotās Coalesce funkcijas atgriešanas vērtība ir vispārīga.
IsEmpty
Attiecas uz: Pamatnes programmām Modeļa vadītas programmas
IsEmpty funkcija pārbauda, vai tabulā ir ieraksti. Tā ir ekvivalenta CountRows funkcijas lietošanai un pārbauda nulli. Varat pārbaudīt datu avota kļūdas, kombinējot IsEmpty ar funkciju Errors.
Atgrieztā funkcijas IsEmpty vērtība ir Būla patiess vai aplams.
Sintakse
Tukšs()
Coalesce( Vērtība1 [, Vērtība2, ... ] )
- Vērtības – Obligāts. Pārbaudāmās vērtības. Katra vērtība tiek vērtēta, secībā, līdz tiek atrasta vērtība, kas nav tukša, un virkne, kas nav tukša. Pēc šī punkta vērtības netiek vērtētas.
IsBlank( vērtība )
- Vērtība - Obligāts. Vērtība, ko pārbaudīt tukšai vērtībai vai tukšai virknei.
IsEmpty( tabula )
- Tabula - Obligāts. Tabula, kuras ierakstus pārbaudīt.
Piemēri
Tukša
Note
Pašlaik šis piemērs darbojas vienīgi lokālām kolekcijām. Varat uzglabāt tukšas vērtības citos datu avotos, ja ieslēdzat eksperimentālo līdzekli Formulas līmeņa kļūdu pārvaldība sadaļā Iestatījumi>Gaidāmie līdzekļi>Eksperimentāli. Mēs aktīvi strādājam pie tā, lai pabeigtu šo līdzekli un noslēgtu tukšo vērtību nošķiršanu no kļūdām.
Izveidojiet programmu no fragmenta un pievienojiet Pogas vadīklu.
Iestatiet pogas OnSelect rekvizītu uz šo formulu:
ClearCollect( Cities, { Name: "Seattle", Weather: "Rainy" } )
Priekšskatiet programmu, pieskarieties pievienotajai pogai un tad aizveriet Priekšskatījumu.
Izvēlnē Fails pieskarieties vienumam Kolekcijas.
Tiek parādīta kolekcija Pilsētas, kurā parādīts viens ieraksts ar "Sietla" un "Lietains":
Lai atgrieztos noklusējuma darbvietā, atlasiet atpakaļvērsto bultiņu.
Pievienojiet vadīklu Etiķete un iestatiet tās rekvizītu Teksts uz šo formulu:
IsBlank( First( Cities ).Weather )
Etiķetē redzama vērtība false, jo lauks Laikapstākļi satur vērtību ("Lietains").
Atlasiet otro pogu, un iestatiet tās rekvizītu OnSelect uz šo formulu:
Patch( Cities, First( Cities ), { Weather: Blank() } )
Priekšskatiet programmu, pieskarieties pievienotajai pogai un tad aizveriet Priekšskatījumu.
Pirmā ieraksta lauks Laikapstākļi vienumā Pilsētas tiek aizstāts ar tukšu vērtību, tādējādi noņemot vienumu "Lietains", kas tur atradās pirms tam.
Etiķetē redzama vērtība true, jo lauks Laikapstākļi vairs nesatur vērtību.
Coalesce
Formula | Apraksts | Rezultāts |
---|---|---|
Kombinētais( Tukšais(), 1 ) | Pārbauda atgriezto vērtību no funkcijas Blank, kura vienmēr atgriež tukšu vērtību. Tā kā pirmais arguments ir tukšs, novērtēšana turpinās ar nākamo argumentu, līdz tiek atrasta vērtība, kas navtukša un virkne, kas nav tukša. | 1 |
Ogļrūpniecība( "", "2" ) | Pārbauda pirmo argumentu, kas ir tukša virkne. Tā kā pirmais arguments ir tukša virkne, novērtēšana turpinās ar nākamo argumentu, līdz tiek atrasta vērtība, kas navtukša, un virkne, kas nav tukša. | 2 |
Coalesce( Blank(), "", Blank(), "", "3", "4" ) | Saplūšana sākas argumentu saraksta sākumā un novērtē katru argumentu pēc kārtas, līdz tiek atrasta vērtība, kas nav tukša, un virkne, kas nav tukša . Šajā gadījumā pirmie četri argumenti atgriež tukšu vērtību vai tukšu virkni, tāpēc novērtēšana turpinās līdz piektajam argumentam. Piektais arguments ir vērtība, kas navtukša, un virkne, kas nav tukša, tāpēc vērtēšana šajā vietā tiek apturēta. Tiek atgriezta piektā argumenta vērtība, bet sestais arguments novērtēts netiek. | 3 |
Saplūšana( "" ) | Pārbauda pirmo argumentu, kas ir tukša virkne. Tā kā pirmais arguments ir tukša virkne un citu argumentu nav, funkcija atgriež tukšu vērtību. | Tukša |
IsBlank
Izveidojiet programmu no fragmenta, pievienojiet teksta ievades vadīklu un nodēvējiet to par FirstName.
Pievienojiet etiķeti un iestatiet tās rekvizītam Teksts šādu formulu:
If( IsBlank( FirstName.Text ), "First Name is a required field." )
Pēc noklusējuma teksta ievades vadīklas rekvizīts Teksts tiek iestatīts uz "Teksta ievade". Tā kā rekvizīts satur vērtību, tā nav tukša un etiķete nerāda nevienu ziņojumu.
Noņemiet visas rakstzīmes no teksta ievades vadīklas, tostarp jebkādas atstarpes.
Tā kā Teksta rekvizīts vairs nesatur rakstzīmes, tā ir tukša virkne, un IsBlank (FirstName.Text) vērtība būs true. Tiek attēlots obligātā lauka ziņojums.
Informāciju par to, kā veikt validāciju, izmantojot citus rīkus, skatiet sadaļā Validate funkcija un darbs ar datu avotiem.
Citi piemēri:
Formula | Apraksts | Rezultāts |
---|---|---|
IsBlank( Tukšs() ) | Pārbauda atgriezto vērtību no funkcijas Blank, kura vienmēr atgriež tukšu vērtību. | patiess |
IsBlank( "" ) | Virkne, kas nesatur rakstzīmes. | patiess |
IsBlank( "Sveiki" ) | Virkne, kas satur vienu vai vairākas rakstzīmes. | nepatiess |
IsBlank( AnyCollection ) | Tā kā kolekcija pastāv, tā nav tukša, pat ja tajā nav ierakstu. Lai pārbaudītu, vai kolekcija nav tukša, tā vietā izmantojiet funkciju IsEmpty. | nepatiess |
IsBlank( Mid( "Labdien", 17, 2 ) ) | Funkcijas Mid sākuma rakstzīme atrodas aiz virknes beigām. Rezultāts ir tukša virkne. | patiess |
IsBlank( Ja( nepatiess, nepatiess ) ) | Funkcija If bez ElseResult. Tā kā nosacījums vienmēr ir false, šī funkcija If vienmēr atgriež tukšu vērtību. | patiess |
IsEmpty
Izveidojiet programmu no fragmenta un pievienojiet Pogas vadīklu.
Iestatiet pogas OnSelect rekvizītu uz šo formulu:
Savākt( Saldējums,Garša { : "Zemene", Daudzums: 300,Garša } { : "Šokolāde", Daudzums: 100 } )
Priekšskatiet programmu, pieskarieties pievienotajai pogai un tad aizveriet Priekšskatījumu.
Tiek izveidota kolekcija ar nosaukumu IceCream, un tā satur šādus datus:
Šajā kolekcijā ir divi ieraksti, un tā nav tukša. IsEmpty( IceCream ) atgriež false, un CountRows( IceCream ) atgriež 2.
Atlasiet otro pogu, un iestatiet tās rekvizītu OnSelect uz šo formulu:
Clear( IceCream )
Priekšskatiet programmu, pieskarieties otrajai pogai un tad aizveriet Priekšskatījumu.
Kolekcija tagad ir tukša:
Clear funkcija noņem visus ierakstus no kolekcijas, tādējādi iegūstot tukšu kolekciju. IsEmpty( IceCream ) atgriež true, un CountRows( IceCream ) atgriež 0.
Varat lietot arī funkciju IsEmpty, lai pārbaudītu, vai aprēķinātā tabula ir tukša, kā parādīts šajos piemēros:
Formula | Apraksts | Rezultāts |
---|---|---|
IsEmpty( [ 1, 2, 3 ] ) | Vienas kolonnas tabula satur trīs ierakstus un tāpēc nav tukša. | nepatiess |
IsEmpty( [ ] ) | Vienas kolonnas tabula nesatur ierakstus un ir tukša. | patiess |
IsEmpty( filtrs( [ 1, 2, 3 ], vērtība > 5 ) ) | Vienas kolonnas tabula nesatur vērtības, kas ir lielākas par 5. Filtra rezultāts nesatur ierakstus un ir tukšs. | patiess |