Megosztás a következőn keresztül:


AsType és IsType függvény

A következőkre vonatkozik: Vászonalapú alkalmazások Modellvezérelt alkalmazások Power Pages Power Platform CLI

Ellenőrzi, hogy egy rekordhivatkozás egy adott táblázattípusra (IsType) vonatkozik-e, és a hivatkozást egy adott típusként (AsType) kezeli.

Feljegyzés

A PAC CLI PAC POWER-FX parancsok nem támogatják az IsType típust .

Description

Részletesebb áttekintés és további információ a Bejegyzések és polimorf keresések című cikkben található.

A keresőmező általában egy adott táblázat rekordjaira vonatkozik. Mivel a táblázat típusa jól meghatározott, a keresés mezőit egyszerű pontjelöléssel érheti el. Például a First( Accounts ).'Primary Contact'.'Full Name' a Fiókok táblázatból a Kapcsolatok táblázat Elsődleges kapcsolat rekordjába lép, és kivonja a Teljes név mezőt.

A Microsoft Dataverse támogatja a polimorf keresőmezőket is, amelyek több táblázat rekordjaira is hivatkozhatnak, mint ahogy az a következő példákban látható.

Keresőmező A következőre hivatkozhat
Tulajdonos Felhasználók vagy Csoportok
Ügyfél Partnerek vagy Kapcsolattartók
Kapcsolódó elemek Partnerek, Kapcsolattartók, Tudásbáziscikkek, stb.

A vászonalapú alkalmazás képletekben használjon rekordhivatkozásokat a polimorf keresések kezeléséhez. Mivel egy rekordhivatkozás különböző táblázatokra hivatkozhat, nem tudhatja, hogy mely mezők lesznek elérhetőek, amikor képletet ír. A Record.Field jelölés nem áll rendelkezésre. A képleteknek igazodniuk kell azokhoz a rekordokhoz, amelyekkel az alkalmazás a futás során találkozik.

Az IsType függvény azt vizsgálja, hogy egy rekordhivatkozás egy adott táblázattípusra vonatkozik-e. A függvény a TRUE vagy a FALSE logikai értéket adja vissza.

Az AsType függvény egy rekordhivatkozást egy adott táblázattípusként kezel, amit néha casting-nak neveznek. Az eredményt úgy használhatja, mintha a táblázat egy rekordja lenne, és ismét a Record.Field jelölést használhatja a rekord összes mezőjének eléréséhez. Ha a hivatkozás nem az adott típusú, hiba történik.

Használja ezeket a függvényeket együtt, hogy először tesztelje egy rekord táblázattípusát, majd az adott típusú rekordként kezelje, hogy a mezők rendelkezésre álljanak:

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

Ezekre a függvényekre csak akkor van szükség, ha egy rekordhivatkozás mezőihez szeretne hozzáférni. A Filter függvény rekordhivatkozásai például az IsType vagy az AsType nélkül is használhatók:

Filter( Accounts, Owner = First( Users ) )

Hasonlóképpen, a rekordhivatkozások a Patch függvénnyel is használhatók:

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

Ha rekordkörnyezetben, például egy Galéria vagy Űrlapszerkesztés vezérlőn belül használja, akkor előfordulhat, hogy a globális egyértelműsítő operátorral kell hivatkoznia a táblázat típusára. Ez a képlet például olyan katalógussal lesz hatékony, amely a kapcsolattartók listáját jeleníti meg, ahol a Vállalat neve egy Ügyfél keresése:

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

Mindkét függvény esetében a típust a táblázathoz kapcsolódó adatforrás nevén keresztül adja meg. A képlet akkor működik, ha hozzáad egy adatforrást az alkalmazáshoz minden olyan típus esetén, amellyel a tesztet vagy típuskonverziót szeretne végezni. Például hozzá kell adnia a Felhasználók táblázatot adatforrásként, ha az IsType és AsType függvényt a Tulajdonos kereséssel és a táblázat rekordjaival szeretné használni. Csak azokat az adatforrásokat adhatja hozzá, amelyeket ténylegesen használ az alkalmazásban; nem kell hozzáadnia az összes olyan táblázatot, amelyre egy keresés hivatkozhat.

Ha a rekordhivatkozás üres, az IsType a FALSE értéket adja vissza, az AsType pedig üres értéket ad. Az üres rekordok összes mezője üres.

Szintaxis

AsType( RecordReference, TableType )

  • RecordReference – kötelező. Egy rekordhivatkozás, gyakran egy keresőmező, amely több táblázat bármelyikében lévő rekordra hivatkozhat.
  • TableType – kötelező. Az adott táblázat, amelybe a rekordot át kell adni.

IsType( RecordReference, TableType )

  • RecordReference – kötelező. Egy rekordhivatkozás, gyakran egy keresőmező, amely több táblázat bármelyikében lévő rekordra hivatkozhat.
  • TableType – kötelező. Az adott táblázat, amelyre a tesztelés vonatkozik.

Példa

A Bejegyzések és polimorf keresések cikk részletes példákat tartalmaz.

  1. Hozzon létre egy üres vászonalapú alkalmazást táblagépekhez.

  2. A bal oldali sávban válassza az Adatok>Adatok hozzáadása lehetőséget. Ezután adja hozzá a Fiókok és a Kapcsolatok táblázatokat.

    Üres alkalmazás két adatforrással: partnerek és kapcsolattartók.

  3. A bal oldali sávban válassza a + (Beszúrás) >Elrendezés>Üres függőleges galéria lehetőséget.

    Galériavezérlő beillesztése üres függőleges elrendezéssel.

  4. Válassza a Csatlakozás adatokhoz, majd válassza a Kapcsolatok adatforrást.

  5. Állítsa a katalógus elrendezését Cím és alcím értékre.

    Nyissa meg az elrendezésválasztót a tulajdonságok ablaktáblából.

    Állítsa az elrendezést Cím és alcím értékre.

  6. Az Adatok panelen nyissa meg a Cím1 listát, majd válassza a Teljes név lehetőséget.

    Állítsa be a cím értékét.

  7. Jelölje ki az Alcím1 címkevezérlőt.

    Állítsa be a felirat értékét.

  8. Állítsa az Alcím1 Szöveg tulajdonságát a következő képletre:

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

    A képernyő most befejeződött, és a galériában összekevert fiókokat és névjegyeket mutatja.

    A katalógus felirata a következő értékeket jeleníti meg:

    • „--”, ha a 'Cégnév' üres.
    • „Fiók:”, majd a Fiókok táblázatból a Fiók neve mezőt, ha a Cég neve mező egy fiókra hivatkozik.
    • „Kapcsolat:”, majd a Kapcsolatok táblázatból a Teljes név mezőt, ha a Cég neve mező egy kapcsolatra hivatkozik.

    Az eredmények eltérhetnek az ebben a témakörben szereplőktől, mivel itt módosított mintaadatokat használtunk, hogy további eredménytípusok jelenjenek meg.