Funktsioonid AsType ja IsType

Kehtib: Lõuendirakendused Mudelipõhised rakendused Power Platform CLI

Kontrollib kindla tabelitüübi (IsType) kirjeviidet ja jätab viite teatud tüübiks (AsType).

Märkus.

PAC CLI pac power-fx käsud ei toeta IsType’i .

Kirjeldus

Lugege jaotist Kirjete viited ja polümorfne otsing laiema kasutuselevõtu ja üksikasjalikuma teabe saamiseks.

Otsinguväli viitab tavaliselt teatud tabeli kirjetele. Kuna tabeli tüüp on hästi loodud, pääsete otsinguväljadele juurde lihtsa dotatsiooniga. Näiteks Esimene( Ettevõtted ).'Esmane kontaktisik'.'Täisnimi liigub tabelist Ettevõtted tabelist kuni Esmase kontakti kirje Kontaktide tabelis ekstraktib Täisnime välja.

Microsoft Dataverse toetab ka polüotsinguvälju, mis võib viidata kirjete kogum tabelid, nagu need näited.

Otsinguväli Võib viidata ka
Omanik Users (Kasutajad) või Teams (Tiimid)
Klient Accounts (Ettevõtted) või Contacts (Kontaktid)
Seoses Accounts (Ettevõtted), Contacts (Kontaktid), Knowledge Articles (Teadmiste artiklid) jne.

Kasutage lõuendrakenduste valemites polümorfsete otsingutega töötamiseks kirjete viiteid. Kuna kirjeviide võib viidata erinevatele tabelitele, ei tea te, millised väljad on valemi kirjutamisel saadaval. Märge Record.Field pole saadaval. Need valemid peavad kirjetega kohanema, mida rakendus käitamisel kasutab.

Funktsioon IsType testib, kas kirjeviide viitab kindlale tabelitüübile. Funktsioon tagastab tõeväärtuse tõene või väär.

Funktsioon AsType kirjeldab kirjeviidet kindla tabelitüübina, mõnikord nimetatakse seda Kasting. Saate kasutada tulemit, nagu see oleks tabeli kirje ja kasutaks uuesti kirjet väljade.kirjed tähistus pääseks juurde kõigile selle kirje väljadele. Tõrge ilmneb juhul, kui viide pole kindlat tüüpi.

Kasutage neid funktsioone koos, et esmalt testida kirje tabelitüüpi ja seejärel lisada see seda tüüpi kirjena, nii et väljad oleks saadaval:

If( IsType( First( Accounts ).Owner, Users ),
    AsType( First( Accounts ).Owner, Users ).'Full Name',
    AsType( First( Accounts ).Owner, Teams ).'Team Name'
)

Neid funktsioone on vaja ainult juhul, kui pääsete juurde kirjeviite väljadele. Näiteks saate kirjeviiteid kasutada funktsiooniga Filter (Filtreeri) ilma funktsioonideta IsType või AsType.

Filter( Accounts, Owner = First( Users ) )

Samamoodi saate kasutada kirjeviiteid funktsiooniga Patch (Plaasterda).

Patch( Accounts, First( Accounts ), { Owner: First( Teams ) } )

Kui seda kasutatakse kirje kontekstis Galeriis või Redigeeri vormi juhtelement, peate võib olla kasutama globaalset dismääramistehtet et viidata tüübile. Näiteks oleks see valem efektiivne galeriis, kus kuvatakse kontaktide loend, kus Company Name (Ettevõtte nimi) on Customer (Klient) otsing.

If( IsType( ThisItem.'Company Name', Accounts ),
    AsType( ThisItem.'Company Name', Accounts ).'Account Name',
    AsType( ThisItem.'Company Name', Contacts ).'Full Name'
)

Mõlema funktsiooni puhul saate määrata selle andmeallikas, mis on tabeliga ühendatud. Valemi toimimiseks peate rakendusele lisama ka andmeallika kõigi tüüpide jaoks, mida soovite testida või üle anda. Näiteks peate kasutama Kasutajad tabelit andmeallikana juhul kui soovite IsType ja AsType väljal Omanik otsingut ja selle tabeli kirjeid. Saate lisada ainult andmeallikaid, mida oma rakenduses tegelikult kasutate; te ei pea lisama kõiki tabeleid, mida otsing võib viidata.

Kui kirjeviide on tühi, tagastab funktsioon IsType (On tüüpi) väärtuse väär ja funktsioon AsType (Tüübina) tagastab tühja väärtuse. Kõik tühja kirjega väljad on tühjad.

Süntaks

KuiTüüp( KirjeVäärtus, TabeliTüüp )

  • RecordReference – nõutav. Kirjeviide, sageli otsinguväli, mis võib viidata mõne mitme tabeli kirjele.
  • TableType – nõutav. Kindel tabel, kuhu kirje tuleks lisada.

SeeTüüp( KirjeVäärtus, TabeliTüüp )

  • RecordReference – nõutav. Kirjeviide, sageli otsinguväli, mis võib viidata mõne mitme tabeli kirjele.
  • TableType – nõutav. Kindel tabel, mille jaoks soovite testida.

Näide

Kirjeviidete ja polümorfse otsingu mõistmine sisaldab ulatuslikke näiteid.

  1. Lõuendirakenduste loomine tahvelarvutitele.

  2. Valige vasakpoolsel paanil Andmed>Lisa andmed. Seejärel lisage ettevõtte ja Kontakti tabelid.

    Tühi rakendus kahe andmeallikaga: ettevõtted ja kontaktid.

  3. Valige vasakpoolsel paanil väärtus + (Lisa) >Paigutus>Tühi vertikaalne galerii.

    Sisestage galerii juhtelement tühja vertikaalse paigutusega.

  4. Valige Andmetega ühenduse loomine ja seejärel valige Kontaktid andmeallikana.

  5. Seadke galerii paigutuseks Title and subtitle (Pealkiri ja alapealkiri).

    Avage paigutuse valija atribuutide paanilt.

    Määrake paigutuseks Pealkiri ja subtiitrid.

  6. Avage paanil Data (Andmed) loend Title1 ja valige seejärel Full Name (Täisnimi).

    Määrake pealkirja väärtus.

  7. Valige sildi juhtelement Subtitle1.

    Määrake subtiitrite väärtus.

  8. Määrake Subtitle1 atribuut Text (Tekst) järgmisele valemile.

    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'
    )
    

    Kuva on nüüd valmis, kuvades galeriis omavahel segatud kontod ja kontaktid.

    Galerii alapealkiri kuvab järgmised väärtused.

    • "--", kui 'Company Name' (Ettevõtte nimi) on tühi.
    • "Ettevõte: " ja seejärel välja Ettevõtte nimi tabelist Ettevõtted, kui väli Ettevõtte nimi viitab ettevõttele.
    • "Kontakt: " ja seejärel välja Täis nimi tabelist Kontaktid, kui väli Ettevõtte nimi viitab kontaktile.

    Teie tulemused võivad erineda teema tulemustest, kuna see kasutab näidisandmeid, mida muudeti erinevat tüüpi tulemuste kuvamiseks.