Bendrinti naudojant


Funkcijos AsType ir IsType

Taikoma: Drobės programoms Modeliu pagrįstoms programoms Power Pages Power Platform CLI

Tikrina konkretaus lentelės tipo kaip įrašo nuorodą ir nurodo IsType konkretų tipą (AsType).

Pastaba.

PAC CLI pac power-fx komandos nepalaiko IsType.

Aprašą

Skaitykite Įrašų nuorodų ir polimorfiškų peržvalgų supratimas, kad gautumėte daugiau informacijos.

Peržvalgos laukas paprastai nurodo konkrečios lentelės įrašus. Kadangi lentelės tipas yra gerai nustatytas, galite pasiekti peržvalgos laukus naudodami paprastą tašką. Pavyzdžiui, Pirmasis( klientai ).'Pirminis kontaktas'.'Visas vardas' išėjimai iš Sąskaitos lentelė į pirminio kontakto įrašų kontaktų lentelėje ir išskleiskite Visas vardas laukelis.

Microsoft Dataverse taip pat palaikomorphic peržvalgos laukus, kurie gali nurodyti įrašus iš lentelių rinkinio, kaip nurodyta šiuose pavyzdžiuose.

Peržvalgos laukas Gali nurodyti
Savininkas Vartotojai arba Komandos
Klientas Klientai arba Kontaktai
Atsižvelgiant į Klientai, Kontaktai, Žinių straipsniai ir kt.

Drobės programos formulėse darbui su polimorfinėmis peržvalgomis naudokite įrašų nuorodas. Įrašo nuoroda gali nurodyti skirtingas lenteles, todėl nežinote, kurie laukai bus prieinami parašant formulėje. Record.Field žymėjimas yra negalimas. Šios formulės turi būti pritaikytos prie įrašų, su kuriais veikianti programa susiduria.

Tai IsType tikrina, ar įrašo nuoroda nurodo konkretų lentelės tipą. Funkcija pateikia Bulio logikos reikšmę TRUE arba FALSE.

Funkcija AsType užfiksuos įrašo nuorodą kaip konkretų lentelės tipą, kartais vadinamą sustingusi. Rezultatą galite naudoti, tarsi tai būtų lentelės įrašas, ir dar kartą naudokite lauko įrašą Record.Field notavimas prieigai prie visų to įrašo laukų. Jei nuoroda nėra specialaus tipo, įvyksta klaida.

Šias funkcijas naudokite kartu, jei norite iš pradžių patikrinti įrašo lentelės tipą, o tada jį laikyti kaip to tipo įrašą, kad būtų prieinami laukai:

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

Šių funkcijų reikia tik tuo atveju, jei norite pasiekti įrašo nuorodos laukus. Pavyzdžiui, galite naudoti įrašo nuorodas Filtro funkcijoje be IsType arba AsType:

Filter( Accounts, Owner = First( Users ) )

Taip pat galite naudoti įrašų nuorodas su Pataisos funkcija:

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

Jei naudojamas įrašo kontekste, pvz., galerijos ar formos redagavimo valdiklyje, gali reikėti visuotinįnaudoti formą dviprasminimo operatorių lentelės tipui nurodyti. Pavyzdžiui, ši formulė būtų veiksminga galerijai, kurioje rodomas kontaktų sąrašas, kur Įmonės pavadinimas yra Kliento peržvalga:

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

Nurodykite abiejų funkcijų tipą per prie duomenų šaltinis prisijungusio asmens pavadinimą. Kad formulė veiktų, į programą dėl bet kokio tikrintino arba konvertuotino tipo reikia įtraukti duomenų šaltinį. Pavyzdžiui, turite įtraukti vartotojų lentelę kaip įrašą duomenų šaltinis norite naudoti IsType ir AsType su Savininku peržvalga ir įrašais iš tos lentelės. Galite įtraukti tik duomenų šaltinius, kuriuos iš tiesų naudojate savo programoje; jums nereikia įtraukti visų lentelių, kurias gali nurodyti peržvalga.

Jei įrašo nuoroda yra tuščia, IsType pateikia FALSE, o AsType pateikia tuščia. Visi tuščio įrašo laukai bus tušti.

Sintaksė

AsType ( RecordReference, TableType)

  • RecordReference – būtina. Įrašo nuoroda, dažnai peržvalgos laukas, gali kuris gali nurodyti įrašą bet kurioje iš kelių lentelių.
  • TableType – būtina. Konkreti lentelė, su kuria įrašas turi būti susumuoti.

IsType ( RecordReference, TableType)

  • RecordReference – būtina. Įrašo nuoroda, dažnai peržvalgos laukas, gali kuris gali nurodyti įrašą bet kurioje iš kelių lentelių.
  • TableType – būtina. Konkreti lentelė, kurią reikia tikrinti.

Pavyzdžiui

Įrašų nuorodų ir polimorfiškų peržvalgų supratimas pateikiami išsamūs pavyzdžiai.

  1. Sukurkite tuščią drobės programą, skirtą planšetiniams kompiuteriams.

  2. Kairiojoje juostoje pasirinkite Duomenys>Įtraukti duomenys. Tada įtraukite abonementų ir kontaktų lenteles.

    Tuščia programa su dviem duomenų šaltiniais: klientai ir kontaktai.

  3. Kairiojoje srityje pasirinkite + (Įterpti) >Maketas>Tuščia vertikali galerija.

    Galerijos valdiklio įterpimas naudojant tuščią vertikalų maketą.

  4. Pasirinkite Prisijungti prie duomenų, tada rinkitės Kontaktai duomenų šaltinis.

  5. Nustatykite galerijos maketą į Antraštė ir paantraštė.

    Atidarykite maketo parinkiklį ypatybių srityje.

    Nustatykite išdėstymą į Pavadinimas ir subtitrai.

  6. Duomenų srityje atidarykite Title1 sąrašą ir pasirinkite Vardas ir pavardė.

    Nustatykite pavadinimo reikšmę.

  7. Pasirinkite Subtitle1 žymos valdiklį.

    Nustatykite subtitrų vertę.

  8. Nustatykite Subtitle1 Teksto ypatybę pagal šią formulę:

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

    Dabar baigtas ekranas, kuriame rodomos galerijoje sumaišytos paskyros ir kontaktai.

    Galerijos paantraštė rodo šias reikšmes:

    • „--“, jei Įmonės pavadinimas yra tuščias.
    • "Abonementas: " ir tada Kliento vardas laukelis iš abonementų lentelės jei Įmonės pavadinimo laukelis rodo abonementą.
    • "Kontaktas: " ir tada Visas vardas laukelis iš Kontaktai lentelės jei Įmonės pavadinimo laukelis rodo kontaktą.

    Jūsų rezultatai gali skirtis nuo šioje temoje pateiktų rezultatų, nes naudojami pavyzdžio duomenys, kurie buvo modifikuoti norint parodyti papildomus rezultatų tipus.