AsType ve IsType işlevleri
Şunlar için geçerlidir: Tuval uygulamaları
Model temelli uygulamalar
Power Pages
Power Platform CLI
Belirli bir tablo türü (IsType) için kayıt başvurusunu denetler ve başvuruyu belirli bir tür (AsType) olarak değerlendirir.
Not
PAC CLI pac power-fx komutları, IsType işlevini desteklemez.
Description
Daha geniş bir tanıtım ve daha fazla ayrıntı için Kayıt başvurularını ve polimorfik aramaları anlama bölümünü okuyun.
Arama alanı genellikle belirli bir tablodaki kayıtlara başvurur. Tablo türü iyi belirlenmiş olduğundan, basit bir nokta gösterimi kullanarak aramanın alanlarına erişebilirsiniz. Örneğin, First( Firmalar ).'Birincil İlgili Kişi'.'Tam Ad' gösterimi Firmalar tablosundan İlgili Kişiler tablosundaki Birincil İlgili Kişi kaydına gidip Tam Ad alanını ayıklar.
Bu örneklerde olduğu gibi, Microsoft Dataverse, bir dizi tablonun kayıtlarına başvurabilen çok biçimli arama alanlarını da destekler.
Arama alanı | Şuna başvurabilir |
---|---|
Sahip | Kullanıcılar veya Takımlar |
Müşteri | Firmalar veya İlgili Kişiler |
İlgili | Firmalar, İlgili Kişiler, Bilgi Bankası Makaleleri, vb. |
Tuval uygulaması formüllerinde, polimorfik aramalarla çalışmak için kayıt başvurularını kullanın. Kayıt başvurusu farklı tablolara başvurabileceğinden formül yazarken hangi alanların kullanılabileceğini bilemezsiniz. Record.Fieldgösterimi kullanılamıyor. Bu formüller, uygulamanın çalışırken karşılaştığı kayıtlara uyum sağlamalıdır.
IsType işlevi, bir kayıt başvurusunun belirli bir tablo türüne başvuruda bulunup bulunmadığını test eder. İşlev DOĞRU veya YANLIŞ bir Boole değeri döndürür.
AsType işlevi, kayıt başvurusunu yayınlama olarak da bilinen belirli bir tablo türü olarak kabul eder. Sonucu, tabloya ait bir kayıtmış gibi kullanabilir ve bu kaydın tüm alanlarına erişmek için Record.Field gösterimini tekrar kullanabilirsiniz. Başvuru belirli türde değilse bir hata oluşur.
Öncelikle bir kaydın tablo türünü test etmek için bu işlevleri birlikte kullanın ve ardından alanların kullanılabilir olması için bu türde bir kayıt olarak kabul edin:
If( IsType( First( Accounts ).Owner, Users ),
AsType( First( Accounts ).Owner, Users ).'Full Name',
AsType( First( Accounts ).Owner, Teams ).'Team Name'
)
Bu işlevlere yalnızca bir kayıt başvurusunun alanlarına erişiyorsanız ihtiyacınız vardır. Örneğin, Filter işlevinde IsType veya AsType olmadan kayıt başvurularını kullanabilirsiniz:
Filter( Accounts, Owner = First( Users ) )
Benzer olarak, Patch işleviyle kayıt başvurularını kullanabilirsiniz:
Patch( Accounts, First( Accounts ), { Owner: First( Teams ) } )
Gallery veya Edit form denetimi gibi bir kayıt bağlamında kullanılırsa tablo türüne başvurmak için genel kesinleştirme işlecini kullanmanız gerekebilir. Örneğin, bu formül Şirket Adı'nın Müşteri araması olduğu bir ilgili kişi listesi görüntüleyen galeri için etkili olacaktır:
If( IsType( ThisItem.'Company Name', Accounts ),
AsType( ThisItem.'Company Name', Accounts ).'Account Name',
AsType( ThisItem.'Company Name', Contacts ).'Full Name'
)
Her iki işlev için de türü, tabloya bağlı olan veri kaynağının adıyla belirtirsiniz. Formülün çalışmasını sağlamak üzere test etmek veya dönüştürmek istediğiniz tüm türler için uygulamaya bir veri kaynağı da eklemeniz gerekir. Örneğin, IsType ve AsType ile birlikte bir Sahibi araması ve Kullanıcılar tablosundan kayıtları kullanmak isterseniz bu tabloyu veri kaynağı olarak eklemelisiniz. Yalnızca uygulamanızda gerçekten kullandığınız veri kaynaklarını ekleyebilirsiniz, aramanın başvurabileceği tüm tabloları eklemeniz gerekmez.
Kayıt başvurusu boş ise IsType YANLIŞ ve AsType boş değerini döndürür. Boş bir kaydın tüm alanları boş olur.
Sözdizimi
AsType( RecordReference, TableType )
- RecordReference: Gerekli. Kayıt başvurusu genellikle birden çok tabloda bulunan bir kayda başvurabilen bir arama alanıdır.
- TableType - Gereklidir. Kaydın yayınlanması gereken belirli bir tablo.
IsType( RecordReference, TableType )
- RecordReference: Gerekli. Kayıt başvurusu genellikle birden çok tabloda bulunan bir kayda başvurabilen bir arama alanıdır.
- TableType - Gereklidir. Test edilecek belirli bir tablo.
Örnek
Kayıt başvurularını ve polimorfik aramaları anlama konusu kapsamlı örnekler içerir.
Tabletler için boş bir tuval uygulaması oluşturun.
Sol bölmede, Veri>Veri ekle'yi seçin. Ardından, Firmalar ve İlgili Kişiler tablolarını ekleyin.
Sol bölmede, + (Ekle) >Düzen>Boş dikey galeri'yi seçin.
Verilere bağlan'ı ve ardından veri kaynağı olarak İlgili Kişiler'i seçin.
Galerinin düzenini Başlık ve alt başlık olarak ayarlayın.
Veri bölmesinde, Başlık1 listesini açın ve sonra Tam Ad'ı seçin.
Alt Başlık1 label denetimini seçin.
Alt Başlık1 denetiminin Text özelliğini şu formül olarak ayarlayın:
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' )
Galerideki alt başlık şu değerleri gösterir:
- 'Şirket Adı' boş ise "--".
- "Firma: " ve ardından Şirket Adı alanı bir firmaya başvuruyorsa Firmalar tablosundan Firma Adı alanı.
- "İlgili Kişi: " ve ardından Şirket Adı alanı bir ilgili kişiye başvuruyorsa İlgili Kişiler tablosundan Tam Ad alanı.
Uygulama, ek sonuç türlerini göstermek için değiştirilmiş örnek veriler kullandığı için sonuçlarınız bu konudaki sonuçlardan farklı olabilir.