AsType және IsType функциялары
Қолданылады: Canvas қолданбалары Үлгіге негізделген қолданбалар Power Platform CLI
Белгілі бір кесте түріне арналған жазба сілтемесін тексереді (IsType) және анықтаманы нақты түр ретінде қарастырады (AsType).
Ескертпе
PAC CLI pac power-fx пәрмендеріIsType қолданбасын қолдамайды.
Сипаттама
Кеңірек кіріспені және қосымша мәліметтерді алу үшін Жазба сілтемелерін және полиморфтық іздеулерді түсіну бөлімін оқыңыз.
Іздеу өрісі әдетте белгілі бір кестедегі жазбаларға жатады. Кесте түрі жақсы орнатылғандықтан, іздеу өрістеріне қарапайым нүктелік жазба арқылы қатынасуға болады. Мысалы, First( Accounts ).'Primary Contact'.'Full Name' жазба түрі Тіркелгілер кестесінен Контактілер кестесіндегі Негізгі контакт жазбасына өтеді және Толық аты өрісін шығарады.
Сондай‑ақ Microsoft Dataverse жүйесі осы мысалдардағыдай кесте жиынтығындағы жазбаларға сілтеме жасай алатын полиморфты іздеу өрістеріне қолдау көрсетеді.
Іздеу өрісі | Мынаған сілтеме жасай алады |
---|---|
Жауапты адам | Пайдаланушылар немесе Топтар |
Тұтынушы | Тіркелгілер немесе Контактілер |
Қатысты | Тіркелгілер, Контактілер, Білім қоры мақалалары, т.б. |
Кенеп бағдарламасының формулаларында полиморфты іздеулермен жұмыс жасау үшін жазба сілтемелерін қолданыңыз. Жазба сілтемесі әртүрлі кестелерге сілтеме жасай алатындықтан, формула жазған кезде қандай өрістер қолжетімді болатынын білмейсіз. Жазба.Өріс нұсқауы қолжетімді емес. Бұл формулалар орындалғанда бағдарлама кездесетін жазбаларға бейімделуі керек.
IsType функциясы жазба сілтемесінің белгілі бір кесте түріне жататынын тексереді. Бұл функция логикалық TRUE немесе FALSE мәнін қайтарады.
AsType функциясы жазба сілтемесін кестенің белгілі бір түрі ретінде қарастырады, кейде ол кастинг деп аталады. Сіз нәтижені кестенің жазбасы сияқты қолдануға және Record.Field жазбасын сол жазбаның барлық өрістеріне қатынасу үшін қайта пайдалануға болады. Егер сілтеме белгілі бір түрге жатпаса, қате орын алады.
Алдымен жазбаның кесте түрін тексеру үшін осы функцияларды бірге қолданыңыз, содан кейін өрістер қолжетімді болатындай етіп оны осы түрдегі жазба ретінде қарастырыңыз:
If( IsType( First( Accounts ).Owner, Users ),
AsType( First( Accounts ).Owner, Users ).'Full Name',
AsType( First( Accounts ).Owner, Teams ).'Team Name'
)
Бұл функциялар тек жазбаға сілтеменің өрістеріне қатынасып жатсаңыз ғана қажет болады. Мысалы, Filter функциясында жазбаға сілтемелерді IsType or AsType функцияларынсыз пайдалануға болады:
Filter( Accounts, Owner = First( Users ) )
Осы сияқты, жазбаға сілтемелерді Patch функциясымен бірге пайдалануға болады:
Patch( Accounts, First( Accounts ), { Owner: First( Teams ) } )
Егер жазба контекстінде қолданылса, мысалы Галерея немесе Пішінді өңдеу басқару элементінде, сізге кесте түріне сілтеме жасау үшін глобалдық ажырату операторын қолдану қажет болуы мүмкін. Мысалы, бұл формула Компанияның атауТұтынушы іздеуі болып табылаты нконтактілер тізімін көрсететін галерея үшін тиімді болатын еді:
If( IsType( ThisItem.'Company Name', Accounts ),
AsType( ThisItem.'Company Name', Accounts ).'Account Name',
AsType( ThisItem.'Company Name', Contacts ).'Full Name'
)
Екі функция үшін сіз кестеге қосылған деректер көзінің атауы арқылы түрін анықтайсыз. Формула жұмыс істеуі үшін тексергіңіз немесе таратқыңыз келетін кез келген түрлер үшін бағдарламаға деректер көзін қосу керек. Мысалы, IsType және AsType функциясын Иесі іздеу өрісімен және сол кестедегі жазбалармен пайдалану қажет болса, Пайдаланушылар кестесін деректер көзі ретінде қосу керек. Сіз өзіңіздің бағдарламаңызда қолданатын деректер көздерін ғана қоса аласыз; іздеу сілтеме жасай алатын барлық кестелерді қосу қажет емес.
Егер жазбаға сілтеме blank (бос) болса, IsType функциясы FALSE мәнін қайтарады және AsType функциясы blank (бос) мәнін қайтарады. blank (бос) жазбаның барлық өрістері blank (бос) болады.
Синтаксис
AsType( RecordReference, TableType )
- RecordReference - Міндетті. Жазбаға сілтеме, көбінесе кез келген кестедегі жазбаға сілтеме жасай алатын іздеу өрісі.
- TableType - Міндетті. Жазба түсірілетін нақты кесте.
IsType( RecordReference, TableType )
- RecordReference - Міндетті. Жазбаға сілтеме, көбінесе кез келген кестедегі жазбаға сілтеме жасай алатын іздеу өрісі.
- TableType - Міндетті. Тексерілетін нақты кесте.
Мысал
Жазбаға сілтемелерді және полиморфтық іздеулерді түсіну бөлімі кең мысалдарды қамтиды.
Планшеттер үшін бос кенеп бағдарламасын жасаңыз.
Сол жақ тақтада Деректер>Деректер қосу тармағын таңдаңыз. Содан кейін, Тіркелгілер және Контактілер кестелерін қосыңыз.
Сол жақ тақтада + (Кірістіру) >Орналасу>Бос тік галерея тармағын таңдаңыз.
Деректерге қосылу түймешігін таңдаңыз, содан кейін Контактілер параметрін деректер көзі ретінде таңдаңыз.
Галереяның орналасуын Тақырып және тақырыпша деп орнатыңыз.
Деректер бөлігінде Title1 тізімін ашыңыз, содан кейін Толық аты-жөні параметрін таңдаңыз.
Subtitle1 белгісі басқару элементін таңдаңыз.
Subtitle1 элементінің Text сипатын мына формулаға орнатыңыз:
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' )
Галереядағы тақырыпша мына мәндерді көрсетеді:
- "--" 'Компания атауы'blank (бос) болса.
- "Тіркелгі: " содан кейін егер Компания атауы өрісі тіркелгіге сілтеме жасаса, Тіркелгілер кестесіндегі Тіркелгі атауы өрісі.
- "Контакт: " содан кейін егер Компания атауы өрісі контактіге сілтеме жасаса, Контактілер кестесіндегі Толық атауы өрісі.
Сіздің нәтижелеріңіз осы тақырыптағы нәтижелерден өзгеше болуы мүмкін, өйткені ол қосымша нәтижелерді көрсету үшін өзгертілген үлгі деректерін пайдаланады.