Zdieľať cez


Oboznámenie sa s odkazmi na záznamy a polymorfnými vyhľadávaniami v aplikáciách plátna

Keď ste v škole písali výskumné práce, pravdepodobne ste na konci uviedli zoznam svojich referencií. Nezahrnuli ste kópiu skutočného materiálu na pozadí, ktorý ste použili, ale webový odkaz, názov knihy a autora alebo iné informácie, aby niekto mohol vyhľadať pôvodný zdroj. Zmiešali ste rôzne druhy zdrojov v jednom zozname, novinové články vedľa zvukových záznamov, z ktorých každý mal svoje vlastné špecifické podrobnosti pre správnu citáciu. Napríklad články na Wikipédii často obsahujú dlhý zoznam odkazov .

V aplikáciách plátna často pracujete s kópiami záznamov stiahnutými zo zdrojov údajov. Na identifikáciu konkrétneho požadovaného záznamu použijete funkcie LookUp a Filter a vlastnosť Selected ovládacieho prvku Galéria. Všetky záznamy z filtra Filter alebo Selected budú rovnakého typu tabuľky, takže môžete použiť polia s jednoduchým zápisom .Field . Tieto kópie často obsahujú referenčné informácie, aby ste mohli použiť funkciu Patch na aktualizáciu pôvodného zdroja.

Aplikácie Canvas tiež podporujú referencie záznamov. Podobne ako odkaz na výskumný príspevok, odkaz na záznam sa týka záznamu bez toho, aby obsahoval jeho úplnú kópiu. Takýto odkaz môže odkazovať na záznam v ktorejkoľvek tabuľke. Rovnako ako odkazy na výskumné práce môžete v jednom stĺpci kombinovať záznamy z rôznych tabuliek.

Mnoho operácií s odkazmi na záznamy je totožné s prácou so záznamami. Môžete porovnávať odkazy na záznamy navzájom a na úplné záznamy. Hodnotu odkazu na záznam môžete nastaviť pomocou funkcie Patch rovnako ako pri vyhľadávaní celého záznamu.

Existuje jeden dôležitý rozdiel v použití: nemôžete mať priamy prístup k poliam referenčných informácií o záznamoch bez toho, aby ste najskôr určili, na ktorú tabuľku odkazuje. Je to preto, že aplikácie plátna si vyžadujú, aby boli pri písaní vzorcov známe všetky typy. Keďže typ odkazu na záznam nepoznáte, kým sa aplikácia nespustí, nemôžete priamo použiť jednoduchú notáciu .Field . Najprv musíte dynamicky určiť typ tabuľky pomocou funkcie IsType a potom použiť notáciu .Field na výsledok funkcie AsType .

Typ tabuľky odkazuje na schému každého záznamu v tabuľke. Každá tabuľka má jedinečnú množinu polí s rôznymi názvami a typmi údajov. Každý záznam tabuľky dedí túto štruktúru; dva záznamy majú rovnaký typ tabuľky, ak pochádzajú z tej istej tabuľky.

Poznámka

Môžete si vybrať z mnohých rôznych konektorov na pripojenie k rôznym typom zdrojov údajov pre aplikácie plátna. Pri práci s aplikáciami plátna vo vnútri Power Apps Studio sa však stĺpce v Microsoft Dataverse označujú ako polia podobne ako všetky ostatné zdroje údajov. Stĺpec sa používa iba pri odkazovaní na stĺpec vo vnútri Dataverse. Viac informácií: Dataverse aktualizácia terminológie

Polymorfné vyhľadávanie

Microsoft Dataverse podporuje vzťahy medzi záznamami. Každý záznam v tabuľke Účty má vyhľadávací stĺpec Hlavný kontakt pre záznam v tabuľke Kontakty . Vyhľadávanie sa môže vzťahovať iba na záznam v tabuľke Kontakty a nemôže sa vzťahovať na záznam napríklad v tabuľke Tímy . Tento posledný detail je dôležitý, pretože vždy viete, aké stĺpce budú k dispozícii na vyhľadanie.

Dataverse podporuje aj polymorfné vyhľadávania, ktoré môžu odkazovať na záznam z ktorejkoľvek tabuľky v množine. Napríklad stĺpec Vlastník môže odkazovať na záznam v tabuľke Používatelia alebo v tabuľke Tímy . Rovnaký vyhľadávací stĺpec v rôznych záznamoch môže odkazovať na záznamy v rôznych tabuľkách. V takom prípade nie vždy viete, aké stĺpce budú k dispozícii.

Referencie na plátne boli navrhnuté na prácu s polymorfnými vyhľadávaniami v Dataverse. Odkazy na záznamy môžete použiť aj mimo tohto kontextu, čím sa tieto dva pojmy líšia.

V ďalšej časti začnete skúmať tieto koncepty pomocou vyhľadávania Vlastník.

Zobrazenie stĺpcov vlastníka záznamu

Každá tabuľka v Dataverse obsahuje stĺpec Vlastník . Tento stĺpec nie je možné odstrániť, nemôžete pridať ďalší a vyžaduje vždy hodnotu.

Ak chcete zobraziť tento stĺpec v tabuľke Účet :

  1. Prihlásiť sa Power Apps.

  2. V ľavom paneli vyberte položku Dáta>Tabuľky.

  3. V zozname tabuliek vyberte položku Účet.

  4. V pravom hornom rohu otvorte zoznam filtrov (ktorý je predvolene nastavený na možnosť Predvolené ) a potom vyberte možnosť Všetky.

  5. Posúvajte sa nadol, kým sa nezobrazí stĺpec Vlastník .

    Stĺpec Vlastník v tabuľke Obchodný vzťah.

Tento vyhľadávací stĺpec môže odkazovať na záznam buď z tabuľky Tímy , alebo z tabuľky Používatelia . Nie každý záznam v týchto tabuľkách má povolenie byť vlastníkom; ak narazíte na problém, skontrolujte podporované role.

Táto grafika zobrazuje jednoduchú galériu Účty, kde bola tabuľka Účty pridaná do aplikácie ako zdroj údajov:

Účty zobrazené v ovládacom prvku Galéria.

Dôležité

V celej tejto téme grafika zobrazuje niektoré názvy a ďalšie hodnoty, ktoré nie sú súčasťou vzorových údajov, ktoré sa dodávajú s Dataverse. Kroky presne ukazujú, ako nakonfigurovať ovládacie prvky pre konkrétny výsledok, ale vaša skúsenosť sa bude líšiť v závislosti od údajov o vašej organizácii.

Ak chcete v galérii zobraziť vlastníka každého účtu, možno budete chcieť použiť vzorec ThisItem.Owner.Name. Pole s menom v tabuľke Tím je však Názov tímu a pole s menom v tabuľke Používateľ je Celé meno. Aplikácia nevie, s akým typom vyhľadávania pracujete, kým ju nespustíte, a tento typ sa môže líšiť medzi záznamami v tabuľke Účty .

Potrebujete vzorec, ktorý sa dokáže prispôsobiť tomuto rozptylu. Taktiež je potrebné pridať zdroje údajov pre typy tabuliek, ktorými by mohol byť Vlastník (v tomto prípade Používatelia a Tímy). Pridajte do svojej aplikácie tieto tri zdroje údajov:

Tabuľky Obchodné vzťahy, Tímy a Používatelia na table Údaje.

Pri použití týchto zdrojov údajov použite tento vzorec na zobrazenie mena používateľa alebo tímu:

If( IsType( ThisItem.Owner, Teams ),
    "Team: " & AsType( ThisItem.Owner, Teams ).'Team Name',
    "User: " & AsType( ThisItem.Owner, Users ).'Full Name' )

Účty zobrazené v ovládacom prvku Galéria so zobrazeným poľom Vlastník.

V tomto vzorci funkcia IsType testuje pole Vlastník v porovnaní s tabuľkou Tímy . Ak ide o tabuľku tohto typu, funkcia AsType ju pretypuje na záznam typu Team. V tomto bode máte prístup ku všetkým poliam tabuľky Tímy vrátane Názov tímu pomocou notácie .Field . Ak funkcia IsType určí, že Vlastník nie je záznamom v tabuľke Tímy , toto pole musí byť záznamom v tabuľke Používatelia , pretože pole Vlastník je povinné (nemôže byť prázdne).

Ak chcete použiť ľubovoľné polia odkazu na záznam, musíte najprv použiť funkciu AsType na jeho pretypovanie na konkrétny typ tabuľky. Z poľa Vlastník nemôžete priamo pristupovať k poliam, pretože systém nevie, aký typ tabuľky chcete použiť.

Funkcia AsType vráti chybu, ak pole Vlastník nezodpovedá požadovanému typu tabuľky, takže na zjednodušenie tohto vzorca môžete použiť funkciu IfError . Najprv zapnite experimentálnu funkciu Správa chýb na úrovni vzorcov:

Experimentálny spínač na zapnutie správy chýb na úrovni vzorcov.

Potom nahraďte predchádzajúci vzorec týmto:

IfError(
    "Team: " & AsType( ThisItem.Owner, Teams ).'Team Name',
    "User: " & AsType( ThisItem.Owner, Users ).'Full Name' )

Filter založený na vlastníkovi

Gratulujeme – ukončili ste najťažší aspekt práce s referenciou na záznam. Iné prípady použitia sú jednoduchšie, pretože nepristupujú k poliam záznamu. Vezmite si napríklad filtrovanie, ktoré budete skúmať v tejto časti.

Pridajte ovládací prvok Rozbaľovacie pole nad galériu a nastavte tieto vlastnosti nového ovládacieho prvku:

  • Položky: Users
  • VybraťViacero: false

Nad galériou bol pridaný ovládací prvok rozbaľovacieho poľa s vlastnosťou Položky nastavenou na Používatelia.

Ak chcete filtrovať galériu podľa konkrétneho používateľa vybraného z tohto rozbaľovacieho poľa, nastavte vlastnosť galérie Položky na tento vzorec:

Filter( Accounts, Owner = ComboBox1.Selected )

Filtrovaná galéria na základe hodnoty nastavenej v ovládacom prvku rozbaľovacieho poľa.

Dôležité

Pokyny v tejto téme sú presné, ak budete presne postupovať podľa týchto krokov. Akýkoľvek vzorec, ktorý odkazuje na ovládací prvok podľa jeho názvu, však zlyhá, ak má ovládací prvok iný názov. Ak vymažete a pridáte ovládací prvok rovnakého typu, zmení sa číslo na konci názvu ovládacieho prvku. Pre akýkoľvek vzorec, ktorý ukazuje chybu, potvrďte, že obsahuje správne názvy všetkých ovládacích prvkov.

Nemusíte používať IsType alebo AsType , pretože porovnávate odkazy na záznamy s inými odkazmi na záznamy alebo s celými záznamami. Aplikácia pozná typ tabuľky *ComboBox1.Selected*, pretože je odvodený z tabuľky *Users*. Účty, v ktorých je vlastníkom tím, nezodpovedajú kritériu filtra.

Čosi môžete získať podporovaním filtrovania používateľom alebo tímom.

  1. Zmenou veľkosti galérie a presunutím rozbaľovacieho poľa vytvorte priestor v hornej časti obrazovky, vložte ovládací prvok Rádio nad galériu a potom nastavte tieto vlastnosti pre nový ovládací prvok:

    • Položky: [ "All", "Users", "Teams" ]
    • Rozloženie: Layout.Horizontal
  2. Pre ovládací prvok Rozbaľovacie pole nastavte túto vlastnosť (ak rozbaľovacie pole zmizne, vyberte v ovládacom prvku rádia možnosť Používatelia ):

    • Viditeľné: Radio1.Selected.Value = "Users"
  3. Skopírujte a vložte ovládací prvok Rozbaľovacie pole , presuňte kópiu priamo na originál a potom nastavte tieto vlastnosti pre kópiu:

    • Položky: Teams
    • Viditeľné: Radio1.Selected.Value = "Teams"

    V závislosti od stavu rádiového ovládania sa v aplikácii zobrazí súčasne iba jedno rozbaľovacie pole. Pretože sú priamo nad sebou, zdajú sa, že majú rovnaký ovládací prvok, ktorý mení jej obsah.

  4. Nakoniec nastavte vlastnosť Položky ovládacieho prvku Galéria na tento vzorec:

    Filter( Accounts,
        Radio1.Selected.Value = "All"
        Or (Radio1.Selected.Value = "Users" And Owner = ComboBox1.Selected)
        Or (Radio1.Selected.Value = "Teams" And Owner = ComboBox1_1.Selected)
    )
    

    Filtrovaná galéria zobrazujúca všetky záznamy alebo konkrétneho používateľa či tímu.

Pomocou týchto zmien môžete zobraziť všetky záznamy alebo ich filtrovať na základe používateľa alebo tímu:

Animácia zobrazujúca rôzne filtrované výsledky na základe ovládacieho prvku rádia a rozbaľovacích polí.

Vzorec je plne delegovateľný. Časť porovnávajúca hodnoty prepínača je konštantná vo všetkých záznamoch a vyhodnocuje sa pred odoslaním zvyšku filtra do Dataverse.

Ak chcete filtrovať podľa typu vlastníka, môžete použiť funkciu IsType , ale zatiaľ ju nie je možné delegovať.

Filtrovať podľa typu vlastníka pomocou funkcie IsType.

Aktualizujte vlastníka pomocou záplaty

Pole Vlastník môžete aktualizovať rovnakým spôsobom ako akékoľvek iné vyhľadávanie. Ak chcete nastaviť vlastníka aktuálne vybraného účtu na prvý tím:

Patch( Accounts, Gallery1.Selected, { Owner: First( Teams ) } )

Tento prístup sa nelíši od bežného vyhľadávania, pretože aplikácia pozná typ `First( Teams )`. Ak chcete namiesto toho prvého používateľa, nahraďte túto časť reťazcom First(Používatelia). Funkcia Patch vie, že pole Vlastník môže byť nastavené na ktorýkoľvek z týchto dvoch typov tabuliek.

Ak chcete do aplikácie pridať túto možnosť:

  1. V table Stromové zobrazenie vyberte súčasne ovládací prvok Prepínač a dva ovládacie prvky Rozbaľovacie pole .

  2. V ponuke s tromi bodkami vyberte možnosť Kopírovať tieto položky.

    Kopírovanie viacerých ovládacích prvkov pomocou stromového zobrazenia.

  3. V tej istej ponuke vyberte možnosť Prilepiť.

    Vloženie viacerých ovládacích prvkov pomocou stromového zobrazenia.

  4. Presunutie skopírovaných ovládacích prvkov na pravú stranu galérie.

    Skopírované ovládacie prvky boli presunuté napravo od galérie.

  5. Vyberte skopírovaný ovládací prvok Rádio a potom zmeňte tieto vlastnosti:

    • Položky: [ "Users", "Teams" ]
    • Predvolené: If( IsType( Gallery1.Selected.Owner, Users ), "Users", "Teams" )

    Z ovládania rádia bola odstránená možnosť „všetko“.

  6. V ovládacom prvku Rádio vyberte možnosť Používatelia tak, aby bol viditeľný ovládací prvok Rozbaľovacie pole , ktorý zobrazuje zoznam používateľov.

  7. Vyberte ovládací prvok viditeľné Rozbaľovacie pole a potom nastavte vlastnosť DefaultSelectedItems na tento vzorec:

    If( IsType( Gallery1.Selected.Owner, Users ),
        AsType( Gallery1.Selected.Owner, Users ),
        Blank()
    )
    

    Predvolená vlastnosť nastavená pre rozbaľovacie pole Používatelia.

  8. V ovládacom prvku Rádio vyberte možnosť Tímy tak, aby bol viditeľný ovládací prvok Rozbaľovacie pole , ktorý zobrazuje zoznam tímov.

  9. Vyberte ovládací prvok Rádio , čím odstránite výber z ovládacieho prvku Rozbaľovacie pole , ktorý je teraz pre používateľov neviditeľný.

  10. Vyberte ovládací prvok viditeľné Rozbaľovacie pole pre tímy a potom nastavte jeho vlastnosť DefaultSelectedItems na tento vzorec:

    If( IsType( Gallery1.Selected.Owner, Teams ),
        AsType( Gallery1.Selected.Owner, Teams ),
        Blank()
    )
    

    Predvolená vlastnosť nastavená pre rozbaľovacie pole Teams.

  11. Vložte ovládací prvok Tlačidlo , presuňte ho pod ovládací prvok Rozbaľovacie pole a potom nastavte vlastnosť Text tlačidla na "Patch Owner".

  12. Nastavte vlastnosť tlačidla OnSelect na tento vzorec:

    Patch( Accounts, Gallery1.Selected,
        { Owner: If( Radio1_1.Selected.Value = "Users",
                     ComboBox1_2.Selected,
                     ComboBox1_3.Selected ) } )
    

    Vzorec nastavený na ovládacom prvku Tlačidlo.

Skopírované ovládacie prvky Prepínač a Rozbaľovacie pole zobrazujú vlastníka aktuálne vybratého účtu v galérii. S rovnakými ovládacími prvkami môžete nastaviť vlastníka účtu na ľubovoľný tím alebo používateľa kliknutím na tlačidlo:

Animácia zobrazujúca záplatu vlastníka s používateľom alebo tímom.

Ukážte vlastníka pomocou formulára

Pole Vlastník môžete zobraziť vo formulári pridaním vlastnej karty. Od tohto písania nemôžete zmeniť hodnotu poľa pomocou ovládacieho prvku formulára.

  1. Vložte ovládací prvok Upraviť formulár a potom zmeňte jeho veľkosť a presuňte ho do pravého dolného rohu.

  2. Na karte Vlastnosti v blízkosti pravej strany obrazovky otvorte zoznam Zdroj údajov a potom vyberte položku Kontá.

    Ovládací prvok formulára zobrazujúci ďalšie polia s prázdnymi hodnotami.

  3. Nastavte vlastnosť formulára Položka na Gallery1.Selected.

    Ovládací prvok formulára zobrazujúci ďalšie polia vyplnené z vybratej položky v galérii.

  4. Na karte Vlastnosti v blízkosti pravej strany obrazovky vyberte možnosť Upraviť polia.

  5. V table Polia vyberte tri bodky a potom vyberte možnosť Pridať vlastnú kartu.

    Príkaz na pridanie vlastnej karty.

    Nová karta sa zobrazí v dolnej časti ovládacieho prvku formulára.

  6. Podľa potreby zmeňte veľkosť karty, aby zobrazovala celý text.

    Vložená vlastná karta, prázdna.

  7. Vložte ovládací prvok Popis do vlastnej karty a potom nastavte vlastnosť popisu Text na vzorec, ktorý ste použili v galérii:

    If( IsType( ThisItem.Owner, Teams ),
        "Team: " & AsType( ThisItem.Owner, Teams ).'Team Name',
        "User: " & AsType( ThisItem.Owner, Users ).'Full Name' )
    

    Vlastná karta zobrazujúca pole Vlastník v ovládacom prvku štítka.

Pri každom výbere v galérii sa vo formulári objavia ďalšie polia účtu vrátane vlastníka záznamu. Ak zmeníte vlastníka pomocou tlačidla Oprava , ovládací prvok formulára tiež zobrazí túto zmenu.

Animácia zobrazujúca reakciu ovládacieho prvku formulára na zmeny v galérii.

Zobrazenie stĺpcov zákazníka

V stĺpci DataverseZákazník je ďalším polymorfným vyhľadávaním, ktoré je veľmi podobné vyhľadávaniu Vlastník .

Vlastník je obmedzený na jedného na tabuľku, ale tabuľky môžu obsahovať nula, jeden alebo viac vyhľadávacích stĺpcov Zákazník . Systémová tabuľka Kontakty obsahuje stĺpec Názov spoločnosti , ktorý je vyhľadávacím stĺpcom Zákazník .

Tabuľka kontaktov zobrazujúca stĺpec Názov spoločnosti ako typ údajov Zákazník, ktorý sa nevyžaduje.

Ďalšie vyhľadávacie stĺpce Zákazník môžete do tabuľky pridať výberom typu údajov Zákazník pre nový stĺpec.

Typ údajov Zákazník zo zoznamu typov údajov pri vytváraní stĺpca.

Vyhľadávacie pole Zákazník môže odkazovať na záznam buď z tabuľky Účty , alebo z tabuľky Kontakty . S týmito tabuľkami budete používať funkcie IsType a AsType , takže teraz je vhodný čas pridať ich ako zdroje údajov (môžete ponechať Tímy a Používatelia na mieste).

Tabuľky Obchodné vzťahy, Tímy, Používatelia a Kontakty na table Údaje.

Spracovanie polí Zákazník a Vlastník je také podobné, že môžete doslova skopírovať aplikáciu (Súbor>Uložiť akoa potom zadať iný názov) a vykonať tieto jednoduché náhrady:

Miesto Vzorka vlastníka Vzorka zákazníka
Cez Majiteľ „Meno zákazníka“
Cez Používatelia Účty
Cez Tímy Kontakty
Vlastnosť položiek galérie Účty Kontakty
Vlastnosť Položky formulára Účty Kontakty
Prvý argument funkcie Patch
Vo vlastnosti tlačidla OnSelect
Účty Kontakty
Vlastnosť filtrovania položiek rádia [ „Všetci“, „Používatelia“, „Tímy“ ] [ „Všetky“, „Účty“, „Kontakty“ ]
Vlastnosť položiek rádia Patch [ „Používatelia“, „Tímy“ ] [ „Účty“, „Kontakty“ ]
Vlastnosť Viditeľnosť rozbaľovacieho poľa „Používatelia“ a „Tímy“ „Účty“ a „Kontakty“

Napríklad, nová galéria by mala mať túto vlastnosť Položky :

Filter( Contacts,
    Radio1.Selected.Value = "All"
    Or (Radio1.Selected.Value = "Accounts" And 'Company Name' = ComboBox1.Selected)
    Or (Radio1.Selected.Value = "Contacts" And 'Company Name' = ComboBox1_1.Selected)
)

Zákaznícka aplikácia odvodená z aplikácie Vlastníka s jednoduchými zmenami.

Dva dôležité rozdiely medzi Zákazník a Vlastník vyžadujú aktualizáciu vzorcov v galérii a formulári:

  1. Vzťahy typu jeden k mnohým medzi Účty a Kontakty majú prednosť, keď sa na tieto typy tabuliek odvolávate podľa názvu. Namiesto Účty použite [@Účty]; namiesto Kontakty použite [@Kontakty]. Použitím globálneho operátora jednoznačnosti zabezpečíte, že sa v IsType a AsType odvolávate na typ tabuľky. Tento problém existuje iba v kontexte záznamu galérie a ovládacích prvkov formulára.

  2. Pole Vlastník musí mať hodnotu, ale polia Zákazník môžu byť prázdne. Ak chcete zobraziť správny výsledok bez názvu typu, otestujte tento prípad pomocou funkcie IsBlank a namiesto toho zobrazte prázdny textový reťazec.

Obe tieto zmeny sú v tom istom vzorci, ktorý sa zobrazuje na vlastnej karte vo formulári, ako aj vo vlastnosti Text ovládacieho prvku popisu galérie:

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

Aktualizácia vlastnosti Text ovládacieho prvku popisu titulkov v galérii.

Vďaka týmto zmenám si môžete zobraziť a zmeniť pole Názov spoločnosti v tabuľke Kontakty .

Animácia, ktorá ukazuje, ako výber kontaktu zmení ostatné ovládacie prvky a formulár.

Porozumenie vyhľadávacím stĺpcom Týkajúce sa

Vyhľadávací stĺpec Týka sa sa trochu líši od tých, s ktorými ste už v tejto téme pracovali. Začnete tým, že použijete vzory, ktoré táto téma opísala skôr, a potom sa naučíte ďalšie triky.

Môžete začať jednoducho s tabuľkou Faxy. Táto tabuľka má polymorfný vyhľadávací stĺpec Týka sa , ktorý môže odkazovať na Účty, Kontakty a ďalšie tabuľky. Aplikáciu si môžete vziať pre zákazníkov a upraviť ju pre faxy.

Miesto Vzorka zákazníka Ukážka faxov
Cez „Meno zákazníka“ Pokiaľ ide o
Vlastnosť položiek galérie Kontakty Faxy
Vlastnosť Položky formulára Kontakty Faxy
Prvý argument funkcie Patch
Vo vlastnosti tlačidla OnSelect
Kontakty Faxy

Opäť budete musieť pridať zdroj údajov: tentoraz pre faxy . Na karte Zobraziť vyberte Zdroje údajov:

Tabla Údaje, ktorá zobrazuje tabuľky Obchodné vzťahy, Tímy, Používatelia, Kontakty a Faxy.

Dôležitý rozdiel pre Regarding je, že nie je obmedzený na Účty a Kontakty. Zoznam tabuliek je v skutočnosti rozšíriteľný o vlastné tabuľky. Väčšina aplikácií môže tento bod splniť bez úprav, musíte však aktualizovať vzorec pre označenie v galérii a formulár:

If( IsBlank( ThisItem.Regarding ), "",
    IsType( ThisItem.Regarding, Accounts ),
        "Account: " & AsType( ThisItem.Regarding, Accounts ).'Account Name',
    IsType( ThisItem.Regarding, Contacts ),
        "Contacts: " & AsType( ThisItem.Regarding, Contacts ).'Full Name',
    ""
)

Aktualizovaná vlastnosť Text pre ovládací prvok podnadpisu pre vyhľadávania Týka sa.

Po vykonaní týchto zmien budete pracovať s vyhľadávaním Týka sa rovnako ako s vyhľadávaniami Vlastník a Zákazník .

Animácia, ktorá ukazuje, ako výber položky v galérii zmení ostatné ovládacie prvky a formulár.

Vysvetlenie vzťahov Súvisí s entitou

„Ohľadom“ sa líši od „Vlastník“ a „Zákazník“ (Custom). Podľa definície vám reverzný vzťah typu jeden k mnohým umožňuje zapísať First( Účty ).Faxy.

Poďme späť a pozrime sa na definície tabuľky. V Dataverse sú tabuľky ako Faxy, Úlohy, E-maily, Poznámky, Telefonáty, Listy a Chaty označené ako aktivity. Môžete si tiež vytvoriť vlastné tabuľky aktivít. Keď si zobrazíte alebo vytvoríte tabuľku aktivít, jej nastavenia sa zobrazia v časti Ďalšie nastavenia.

Nastavenie tabuľky aktivít pri vytváraní tabuľky.

Ostatné tabuľky môžu byť prepojené s tabuľkou aktivít, ak sú v nastaveniach tabuľky povolené ako úloha aktivity. Účty, Kontakty a mnoho ďalších štandardných tabuliek je takto označených (opäť v časti Ďalšie nastavenia).

Nastavenie úlohy aktivít pri vytváraní tabuľky.

Všetky tabuľky aktivít a tabuľky úloh aktivít majú implicitný vzťah. Ak zmeníte filter na Všetky v hornej časti obrazovky, vyberiete tabuľku Faxy a potom vyberiete kartu Vzťahy , zobrazia sa všetky tabuľky, ktoré môžu byť cieľom vyhľadávania Týkajúce sa .

Vzťahy v tabuľke Faxy, ktoré zobrazujú vzťahy typu mnohé k jednému Týkajúce sa.

Ak zobrazíte vzťahy pre tabuľku Účty , zobrazia sa všetky tabuľky, ktoré môžu byť zdrojom vyhľadávacieho poľa Týkajúce sa .

Vzťahy v tabuľke Obchodný vzťah, ktoré zobrazujú vzťahy typu jeden k mnohým Týkajúce sa.

Čo to všetko znamená?

  • Pri písaní vzorcov musíte brať do úvahy, že zoznam tabuliek aktivít nie je pevný, a môžete si vytvoriť vlastné. Vzorec musí zodpovedajúcim spôsobom spracovať tabuľku aktivít, ktorú ste neočakávali.
  • Úlohy a činnosti v oblasti aktivít majú vzťah jeden k mnohým. Môžete ľahko požiadať o všetky faxy, ktoré sa týkajú účtu.

Ak chcete preskúmať tento koncept v aplikácii:

  1. Pridanie ďalšej obrazovky.

    Vložte prázdnu obrazovku.

  2. Vložte ovládací prvok galérie, zmeňte jeho veľkosť a potom ho presuňte na ľavú stranu obrazovky.

  3. Na karte Vlastnosti v pravej časti obrazovky nastavte položku galérie na hodnotu Účty .

    V table vlastností nastavte Položky na Účty.

  4. Nastavte rozloženie galérie na Názov a potom nastavte pole názvu na Názov účtu.

    V paneli vlastností nastavte pre ovládanie galérie položku Rozloženie na možnosť Názov.

  5. Pridajte druhú galériu, zmeňte jej veľkosť a potom ju presuňte na pravú stranu obrazovky.

  6. Nastavte vlastnosť Položky novej galérie na Gallery2.Selected.Faxes.

    Tento krok vráti filtrovaný zoznam faxov pre daný účet.

    Nastavte vlastnosť Položky galérie, ktorá zobrazuje faxy.

  7. Nastavte rozloženie galérie na Názov a podnadpis a potom nastavte pole názvu tak, aby zobrazovalo pole Predmet (ktoré môže byť napísané malými písmenami predmet).

    Nastavte názov do poľa Predmet.

Keď vyberiete položku v zozname účtov, v zozname faxov sa zobrazia faxy iba pre tento účet.

Animácia zobrazujúca výber v galérii účtov, ktorá riadi zoznam faxov.

Tabuľka aktivity

Ako je uvedené v predchádzajúcej časti, môžete zobraziť všetky faxy pre účet. Môžete však zobraziť aj všetky aktivity účtu vrátane faxov, e-mailových správ, telefonických hovorov a iných interakcií.

V druhom prípade použijete tabuľku Aktivita . Túto tabuľku môžete zobraziť zapnutím možnosti Všetky v pravom hornom rohu, čím odstránite filter zo zoznamu tabuliek.

Zoznam tabuliek zobrazujúcich tabuľku Aktivita.

Tabuľka Aktivita je špeciálna. Vždy, keď pridáte záznam do tabuľky Faxy, systém tiež vytvorí záznam v tabuľke Aktivita so stĺpcami, ktoré sú spoločné pre všetky tabuľky aktivít. Z týchto stĺpcov je Predmet jedným z najzaujímavejších.

Všetky aktivity môžete zobraziť zmenou iba jedného riadku v predchádzajúcom príklade. Nahradiť Gallery2.Selected.Faxes za Gallery2.Selected.Activities.

Zmena vlastnosti Položky pre druhú galériu, zmena z faxov na aktivity.

Záznamy pochádzajú z tabuľky Aktivita , ale napriek tomu môžete použiť funkciu IsType na identifikáciu, o aký druh aktivity ide. Pred použitím funkcie IsType s typom tabuľky musíte opäť pridať zdroj údajov.

Tabla s údajmi zobrazujúca všetky tabuľky požadované pre funkciu IsType.

Pomocou tohto vzorca môžete zobraziť typ záznamu v ovládači štítkov v galérii:

If( IsType( ThisItem, Faxes] ), "Fax",
    IsType( ThisItem, 'Phone Calls' ), "Phone Call",
    IsType( ThisItem, 'Email Messages' ), "Email Message",
    IsType( ThisItem, Chats ), "Chat",
    "Unknown"
)

Nastavte vlastnosť text na vzorec, aby sa zobrazili informácie o faxoch, telefonických hovoroch a iných aktivitách.

Na prístup k poliam konkrétneho typu môžete použiť aj AsType . Napríklad tento vzorec určuje typ každej aktivity a v prípade telefonických hovorov zobrazuje telefónne číslo a smer hovoru z tabuľky Telefónne čísla :

If( IsType( ThisItem, Faxes ), "Fax",
    IsType( ThisItem, 'Phone Calls' ),
       "Phone Call: " &
       AsType( ThisItem, 'Phone Calls' ).'Phone Number' &
       " (" & AsType( ThisItem, 'Phone Calls' ).Direction & ")",
    IsType( ThisItem, 'Email Messages' ), "Email Message",
    IsType( ThisItem, Chats ), "Chat",
    "Unknown"
)

Rozšírená textová vlastnosť s ďalšími informáciami o telefonickom hovore.

Výsledkom je, že aplikácia zobrazuje úplný zoznam aktivít. Pole Predmet sa zobrazuje pre všetky typy aktivít, bez ohľadu na to, či ich vzorec zohľadňuje alebo nie. Pri typoch aktivít, o ktorých viete, môžete zobraziť ich typové názvy a informácie o jednotlivých činnostiach podľa typu.

Dokončená obrazovka zobrazujúca informácie o rôznych druhoch aktivít.

Tabuľka Poznámky

Doteraz všetky príklady týkajúce sa aktivít boli založené na aktivitách, ale tabuľka s poznámkami predstavuje iný prípad.

Pri vytváraní tabuľky môžete povoliť prílohy.

Povolenie príloh a poznámok pri vytváraní tabuľky.

Ak začiarknete políčko na povolenie príloh, vytvoríte vzťah Týka sa s tabuľkou Poznámky , ako je znázornené na tomto obrázku pre tabuľku Účty :

Tabuľka Obchodný vzťah, ktorá zobrazuje k Poznámkam prostredníctvom vzťahy typu jeden k mnohým.

Okrem tohto rozdielu používate vyhľadávanie Týka sa rovnakým spôsobom ako používate aktivity. Tabuľky, ktoré majú povolené prílohy, majú vzťah jeden k mnohým s Poznámkami, ako v tomto príklade:

First( Accounts ).Notes

Poznámka

V čase písania tohto článku nie je vyhľadávanie Týkajúce sa k dispozícii pre tabuľku Poznámky . Na základe stĺpca Regarding nemôžete čítať ani filtrovať a stĺpec nemôžete nastaviť pomocou funkcie Patch.

K dispozícii je však aj obrátený vzťah typu „jeden k mnohým“, takže môžete filtrovať zoznam poznámok pre záznam, ktorý má povolené prílohy. Funkciu Relate môžete použiť aj na pridanie poznámky do tabuľky Poznámky záznamu, ale poznámka musí byť najprv vytvorená, ako v tomto príklade:

Relate( ThisItem.Notes, Patch( Notes, Defaults( Notes ), { Title: "A new note" } ) )

Účastníci aktivity

Od tohto písania aplikácie plátna nepodporujú strany aktivít.