AsType- ja IsType-funktio
Koskee seuraavia: Pohjaan perustuvat sovellukset Mallipohjaisten sovellusten Power Pages Power Platform CLI
Tarkistaa tietyn taulukkotyypin (IsType) tietueviittauksen ja käsittelee viittausta tiettynä tyypinä (AsType).
Muistiinpano
PAC CLI pac power-fx -komennot eivät tue IsTypeä .
Description
Laajempi esittely ja lisätietoja on artikkelissa Tietueviittausten ja polymorfisten hakujen ymmärtäminen.
Valintakenttä viittaa yleensä tietyn taulukon tietueisiin. Koska taulukkotyyppi on määritetty hyvin, valintakenttiä voi käyttää yksinkertaisella pistemerkinnällä. Esimerkiksi First( Accounts ).'Primary Contact'.'Full Name tulee Asiakkaat-taulukosta Yhteyshenkilöt-taulukon Ensisijainen yhteyshenkilö -tietueeseen ja poimii Koko nimi -kentän.
Microsoft Dataverse tukee myös monisteenisia valintakenttiä, jotka voivat viitata taulukoiden tietueisiin kuten näissä esimerkeissä.
Hakukenttä | Voi viitata kohteisiin |
---|---|
Omistaja | Käyttäjät tai tiimit |
Asiakas | Tilit tai yhteystiedot |
Koskien | Tilit, yhteystiedot, tietoartikkelit jne. |
Kaaviosovellusten kaavoissa voit käyttää tietueviitteitä käyttääksesi polymorfisia hakuja. Koska tietueviittaus voi viitata eri taulukoihin, et tiedä, mitkä kentät ovat käytettävissä kaavaa kirjoittaessasi. Record.Field-merkintä ei ole käytettävissä. Kaavojen on mukauduttava tietueisiin, jotka sovellus havaitsee, kun sitä suoritetaan.
IsType-funktio testaa, viittaako tietueviittaus tiettyyn taulukkotyyppiin. Funktio palauttaa totuusarvon TOSI tai EPÄTOSI.
AsType-funktio käsittelee tietueviittauksia tietyntyyppisenä taulukkona, jota kutsutaan myös lähettämiseksi. Voit käyttää tulosta niin kuin se olisi taulukon tietue ja käyttää tietuetta uudelleen. Record.Field-merkinnän avulla voit käyttää kaikkia tietueen kenttiä. Virhe tapahtuu, jos viittaus ei ole tiettyä tyyppiä.
Näiden toimintojen avulla voit ensin testata tietuetaulukon tyypin ja käsitellä sitä sitten tietuetyyppinä niin, että kentät ovat käytettävissä:
If( IsType( First( Accounts ).Owner, Users ),
AsType( First( Accounts ).Owner, Users ).'Full Name',
AsType( First( Accounts ).Owner, Teams ).'Team Name'
)
Tarvitset näitä toimintoja vain, jos käytät tietueviittauksen kenttiä. Voit esimerkiksi käyttää tietueviittauksia Filter- funktiossa, ilman IsType- tai AsType-funktioita:
Filter( Accounts, Owner = First( Users ) )
Vastaavasti voit käyttää tietueviittauksia Patch-toiminnon kanssa:
Patch( Accounts, First( Accounts ), { Owner: First( Teams ) } )
Jos käytät tietueen kontekstissa, esimerkiksi Gallery- tai Edit form -ohjausobjektissa, sinun on ehkä viitattava taulukkotyyppiin yleisessä selvitysoperaattorissa. Tämä kaava on esimerkiksi tehokas valikoimassa, jossa on luettelo yhteyshenkilöistä, joiden Yrityksen nimi on Asiakas-entiteetin valinta:
If( IsType( ThisItem.'Company Name', Accounts ),
AsType( ThisItem.'Company Name', Accounts ).'Account Name',
AsType( ThisItem.'Company Name', Contacts ).'Full Name'
)
Molemmille toiminnoille määritetään tyyppi sen tietolähteen kautta, joka on yhdistetty taulukkoon. Jotta kaava toimisi, sinun täytyy myös lisätä sovellukseen tietolähde mille tahansa testattavalle tai muunnettavalle tyypille. Lisää esimerkiksi Käyttäjät-taulukko tietolähde, jos haluat käyttää Taulukosta IsType- ja AsType-tyyppiä Omistaja-haun ja tietueiden kanssa. Voit lisätä vain ne tietolähteet, joita todellisuudessa käytät sovelluksessasi. Sinun ei tarvitse lisätä kaikkia taulukoita, joihin valinta voi viitata.
Jos tietueviittaus on tyhjä, IsType palauttaa arvon EPÄTOSI ja AsType palauttaa tyhjän. Tyhjän tietueen kaikki kentät ovat tyhjiä.
Syntaksi
AsType(RecordReference,TableType )
- RecordReference - pakollinen. Tietueviittaus, usein valintakenttä, joka voi viitata usean taulukon tietueeseen.
- TableType - Pakollinen. Tietty taulukko, johon tietue tulisi muuttaa.
IsType(RecordReference,TableType )
- RecordReference - pakollinen. Tietueviittaus, usein valintakenttä, joka voi viitata usean taulukon tietueeseen.
- TableType - Pakollinen. Taulukko, jota varten testi suoritetaan.
Esimerkki:
Ymmärrä tietueviittaukset ja polymorfiset haut sisältää kattavia esimerkkejä.
Luo tyhjä kaaviosovellus tableteille.
Valitse vasemmassa ruudussa Tiedot>Lisää tiedot. Lisää sitten Asiakkaat- ja Yhteyshenkilöt-taulukot.
Valitse vasemmassa ruudussa + (Lisää) >Asettelu>Tyhjä pystysuuntainen valikoima.
Valitse Yhdistä tietoihin ja valitse sitten Yhteyshenkilöt-tietolähde.
Määritä gallerian asetteluksi Otsikko ja alaotsikko.
Avaa Tiedot-ruudussa Title1-luettelo ja valitse Full Name.
Valitse Subtitle1-seliteohjausobjekti.
Määritä Subtitle1-ohjausobjektin Text-ominaisuudeksi seuraava kaava:
If( IsBlank( ThisItem.'Company Name' ), "--", IsType( ThisItem.'Company Name', Accounts ), "Account: " & AsType( ThisItem.'Company Name', Accounts ).'Account Name', "Contact: " & AsType( ThisItem.'Company Name', Contacts ).'Full Name' )
Gallerian alaotsikko näyttää seuraavat arvot:
- "--" jos Yrityksen nimi on tyhjä.
- "Asiakas: " ja sitten Tilit-taulukon Tilin nimi -kenttä, jos Yrityksen nimi -kentässä viitataan tiliin.
- "Yhteyshenkilö: " ja sitten Yhteyshenkilöt-taulukon Koko nimi -kenttä, jos Yrityksen nimi -kentässä viitataan yhteyshenkilöön.
Tulokset voivat poiketa tässä aiheessa esitetyistä, koska tässä käytetään muokattua näytedataa, joka näyttää enemmän tulostyyppejä.