Deli z drugimi prek


Seznanite se s sklici zapisov in polimorfnimi iskanji v aplikacijah s platnom

Ko ste v šoli napisali seminarsko nalogo, ste na koncu najverjetneje navedli seznam virov, na katere ste se sklicevali. Pri tem niste uporabili dejanske kopije uporabljenih virov, ampak ste navedli spletno povezavo, avtorja in naslov knjige ali druge informacije, na podlagi katerih je mogoče poiskati izvorno gradivo. Na istem seznamu ste navajali različne vrste virov, recimo časopisne članke in zvočne zapise, pri čemer so za vsak element veljala drugačna pravila glede pravilnega navajanja vira. Članki na Wikipediji imajo običajno dolg seznam sklicev.

V aplikacijah s platnom pogosto delate s kopijami zapisov, prenesenih iz virov podatkov. Pri tem za identifikacijo želenih zapisov uporabljate funkciji LookUp in Filter ter lastnost Selected kontrolnika Gallery. Vsi zapisi iz tabel Filter ali Izbrano bodo iste vrste tabele, zato lahko polja uporabite s preprostim zapisom .Polje. Te kopije običajno vključujejo podatke o sklicu, da lahko s funkcijo Patch posodobite izvorni vir.

Aplikacije s platnom podpirajo tudi sklice zapisov. Podobno kot sklic na gradivo, uporabljeno v napisani seminarski nalogi, se tudi sklic zapisa nanaša na zapis, pri čemer ne vsebuje celotne kopije zapisa. Takšen sklic se lahko sklicuje na zapis v kateri koli tabeli. Podobno kot reference raziskovalne naloge lahko v enem stolpcu mešate zapise iz različnih tabel.

Veliko postopkov pri sklicih zapisov je enakih kot pri delu z zapisi. Sklice zapisov lahko primerjate z drugimi sklici zapisov in s polnimi zapisi. Vrednost sklica zapisa lahko nastavite s funkcijo Patch enako kot bi iskali s celotnim zapisom.

Obstaja pomembna razlika v uporabi: ne morete neposredno dostopati do polj sklica na zapis, ne da bi prej ugotovili, na katero tabelo se nanaša. To pa zato, ker aplikacije s platnom zahtevajo, da so pri pisanju formul vse vrste znane. Ker ne poznate vrste sklica zapisa, dokler se aplikacija ne izvaja, ni mogoče neposredno uporabiti enostavnega zapisa .Field. Najprej morate dinamično določiti vrsto tabele s funkcijo IsType in nato uporabite zapis .Polje za rezultat funkcije AsType.

Vrsta tabele se nanaša na shemo vsakega zapisa v tabeli. Vsaka tabela ima edinstven nabor polj z različnimi imeni in vrstami podatkov. Vsak zapis tabele podeduje to strukturo; dva zapisa imata isto vrsto tabele, če prihajata iz iste tabele.

Opomba

Izbirate lahko med različnimi povezovalniki za povezavo z različnimi vrstami podatkovnih virov za aplikacije s platnom. Vendar pa se pri delu z aplikacijami s platnom v storitvi Power Apps Studio stolpci v okolju Microsoft Dataverse imenujejo polja, podobno kot pri vseh drugih virih podatkov. Stolpec se uporablja samo pri sklicevanju na stolpec v okolju Dataverse. več informacij: Posodobitve terminologije v okolju Dataverse

Polimorfno iskanje

Microsoft Dataverse podpira odnose med zapisi. Vsak zapis v tabeli Računi ima stolpec za iskanje Primarni stik za tabelo Stiki. Iskanje se lahko sklicuje samo na zapis v stolpcu Stiki in se ne more sklicevati na zapis, na primer v tabeli Ekipe. Zadnja podrobnost je pomembna, ker vedno veste, kateri stolpci bodo na voljo za iskanje.

Dataverse podpira tudi polimorfna iskanja, ki se lahko sklicujejo na zapis iz katere koli tabele v naboru. Stolpec Lastnik se lahko na primer nanaša na zapis v tabeli Uporabniki ali Ekipe. Isti stolpec za iskanje se lahko v različnih zapisih sklicuje na zapise v različnih tabelah. V tem primeru ne veste vedno, kateri stolpci bodo na voljo.

Sklici zapisov v delovnem okolju so namenjeni za delo s polimorfnim iskanjem v storitvi Dataverse. Uporabljate lahko tudi sklice zapisov zunaj tega konteksta, kar je tudi razlika med obema konceptoma.

V naslednjem razdelku boste raziskali oba koncepta z uporabo polja za iskanje Lastnik.

Prikaz stolpcev lastnika zapisa

Vsaka tabela v okolju Dataverse vključuje stolpec Lastnik. Tega stolpca ni mogoče odstraniti, ne morete dodati drugega in vedno zahteva vrednost.

Če želite prikazati ta stolpec v tabeli Račun:

  1. Vpis v storitev Power Apps.

  2. V vrstici levega podokna izberite zavihek Podatki > Tabele.

  3. Na seznamu tabel izberite tabelo Račun.

  4. V zgornjem desnem kotu odprite seznam filtrov (ki je privzeto nastavljen na možnost Privzeto) in izberite Vse.

  5. Pomaknite se navzdol do stolpca Lastnik.

    Stolpec lastnika v tabeli »Račun«.

Stolpec za iskanje se lahko na primer sklicuje na zapis v tabeli Ekipe ali Uporabniki. V teh tabelah nima vsak zapis dovoljenja, da bi bil Lastnik; preverite podprte vloge, če naletite na težavo.

Ta grafika prikazuje preprosto galerijo Računi, kjer je bila tabela Računi dodana v aplikacijo kot vir podatkov:

Računi, prikazani v kontrolniku galerije.

Pomembno

V tem članku slike prikazujejo nekatera imena in druge vrednosti, ki niso del vzorčnih podatkov storitve Dataverse. Koraki natančno prikazujejo, kako konfigurirate kontrolnike za določen rezultat, vendar bo vaša uporabniška izkušnja odvisna od podatkov vaše organizacije.

Če želite prikazati lastnika vsakega računa v galeriji, bi se vam morda lahko zdelo priročno uporabiti formulo ThisItem.Owner.Name. Vendar pa je v tabeli Ekipa polje z imenom Ime ekipe in v tabeli Uporabnik polje z imenom Polno ime. Aplikacija ne more vedeti, katero vrsto iskanja uporabljate, dokler je ne zaženete, zato se lahko imena razlikujejo med zapisi v tabeli Računi.

Zato potrebujete formulo, ki se lahko prilagodi tej razliki v imenih. Dodati morate tudi vire podatkov za vrste tabel, kjer je lahko Lastnik (v tem primeru za tabeli Uporabniki in Ekipe). V aplikacijo dodajte te tri vire podatkov:

Tabele »Računi«, »Ekipe« in »Uporabniki« v podoknu s podatki.

Ko so ti viri podatkov dodani, za prikaz imena uporabnika ali ekipe uporabite to formulo:

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

Računi, prikazani v kontrolniku galerije, s prikazanim poljem »Lastnik«.

V tej formuli funkcija IsType preskuša polje Lastnik za tabelo Ekipe. Če gre za to vrsto tabele, ga funkcija AsType pretvori v zapis Ekipa. Na tej točki lahko z zapisom .Polje dostopate do vseh polj tabele Ekipe, vključno s poljem Ime ekipe. Če funkcija IsType določa, da Lastnik ni zapis v tabeli Ekipe, mora biti to polje zapis v tabeli Uporabniki, ker je polje Lastnik obvezno (ne more biti prazno).

Če želite uporabiti katero koli polje sklica na zapis, morate najprej uporabiti funkcijo AsType, da ga pretvori v določeno vrsto tabele. Do polj ne morete dostopati neposredno iz polja Lastnik, ker sistem ne ve, katero vrsto tabele želite uporabiti.

Funkcija AsType vrne napako, če se polje Lastnik ne ujema z zahtevano vrsto tabele, zato lahko uporabite funkcijo IfError za poenostavitev te formule. Najprej vklopite poskusno funkcijo Upravljanje napak na ravni formule:

Stikalo za poskusno funkcijo upravljanja napak na ravni formule.

Nato prejšnjo formulo nadomestite s to:

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

Filtriranje na podlagi lastnika

Čestitamo, zaključili ste najtežji vidik dela s sklicem zapisa. Drugi primeri uporabe so bolj preprosti, ker ne dostopajo do polj zapisa. Kot primer vzemimo filtriranje, ki ga bomo raziskali v tem razdelku.

Nad galerijo dodajte kontrolnik Combo box in za novi kontrolnik nastavite te lastnosti:

  • Elementi: Users
  • SelectMultiple: false

Dodan kontrolnik za kombinirano polje nad galerijo z lastnostjo elementov, nastavljeno na uporabnike.

Če želite galerijo filtrirati po posameznem uporabniku, izbranem v tem kombiniranem polju, za lastnost Items nastavite to formulo:

Filter( Accounts, Owner = ComboBox1.Selected )

Filtrirana galerija na podlagi vrednosti, nastavljene v kontrolniku za kombinirano polje.

Pomembno

Navodila v tej temi so točna, če natančno sledite korakom. Vendar nobena formula, ki se sklicuje na kontrolnik prek njegovega imena, ne uspe, če ima kontrolnik drugačno ime. Če izbrišete in dodate kontrolnik iste vrste, se številka na koncu imena kontrolnika spremeni. Če se za katero koli formulo prikaže napaka, se prepričajte, da vsebuje pravilna imena vseh kontrolnikov.

Funkcije IsType ali AsType vam ni treba uporabiti, ker primerjate sklice zapisov z drugimi sklici zapisov ali celotnimi zapisi. Aplikacija pozna vrsto tabele ComboBox1.Selected, ker izhaja iz tabele Uporabniki. Kupci, katerih lastnik je ekipa, se ne bodo ujemali z merilom filtra.

Stvari lahko postanejo kompleksnejše s podporo filtriranja glede na uporabnika ali ekipo.

  1. Na vrhu zaslona naredite nekaj prostora tako, da spremenite velikost galerije in premaknete kombinirano polje, nad galerijo vstavite kontrolnik Radio in nato nastavite te lastnosti za novi kontrolnik:

    • Elementi: [ "All", "Users", "Teams" ]
    • Postavitev: Layout.Horizontal
  2. Za kontrolnik Combo box nastavite to lastnost (če kombinirano polje izgine, izberite Users v kontrolniku za izbirni gumb):

    • Vidno: Radio1.Selected.Value = "Users"
  3. Kopirajte in prilepite kontrolnik Combo box, premaknite kopijo neposredno prek izvirnik in nato nastavite te lastnosti za kopijo:

    • Elementi: Teams
    • Vidno: Radio1.Selected.Value = "Teams"

    Aplikacija bo hkrati prikazala samo eno kombinirano polje, kar je odvisno od stanja kontrolnika za kombinirano polje. Ker sta neposredno drug nad drugim, se zdi, da gre za isti kontrolnik, ki spreminja svojo vsebino.

  4. Na koncu nastavite lastnost Items kontrolnika Gallery na naslednjo formulo:

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

    Filtrirana galerija, ki prikazuje vse zapise ali posameznega uporabnika ali ekipo.

S temi spremembami lahko prikažete vse zapise ali jih filtrirate na podlagi uporabnika ali ekipe:

Animacija, ki prikazuje različne filtrirane rezultate na podlagi kontrolnika za izbirni gumb in kombiniranih polj.

Formula je v celoti dodeljiva. Del, ki primerja vrednosti izbirnega gumba, je konstanta v vseh zapisih in se oceni, preden se preostanek filtra pošlje v Dataverse.

Če želite filtrirati po vrsti lastnika, lahko uporabite funkcijo IsType, vendar še ni dodeljiva.

Filtriranje glede na vrsto lastnika z uporabo funkcije IsType.

Posodobitev lastnika s funkcijo »Patch«

Polje Lastnik lahko posodobite na enak način kot katero koli drugo iskanje. Če želite lastnika trenutno izbranega kupca nastaviti na prvo ekipo:

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

Ta pristop se ne razlikuje od običajnega iskanja, ker aplikacija pozna vrsto First( Teams ). Če želite namesto tega uporabiti prvega uporabnika, ga nadomestite z delom First( Users ). Funkcija Patch ve, da lahko polje Lastnik nastavite na katero koli od teh dveh vrst tabel.

Če želite to zmogljivost dodati v aplikacijo:

  1. V podoknu Drevesni pogled izberite kontrolnik Radio in dva kontrolnika KCombo box hkrati.

  2. V meniju s tremi pikami izberite Kopiraj te elemente.

    Kopiranje več kontrolnikov ob uporabi drevesnega pogleda.

  3. V istem meniju izberite Prilepi.

    Lepljenje več kontrolnikov ob uporabi drevesnega pogleda.

  4. Kopirane kontrolnike postavite desno od galerije.

    Premaknjeni kopirani kontrolniki desno od galerije.

  5. Izberite kopirani kontrolnik Izbirni gumb in nato spremenite te lastnosti:

    • Elementi: [ "Users", "Teams" ]
    • Privzeto: If( IsType( Gallery1.Selected.Owner, Users ), "Users", "Teams" )

    Odstranitev možnosti »Vse« iz kontrolnika izbirnega gumba.

  6. V kontrolniku Radio izberite možnost Uporabniki, da je kontrolnik Combo box, ki navaja uporabnike, prikazan.

  7. Izberite vidni kontrolnik Combo box in nato nastavite lastnost DefaultSelectedItems za to formulo:

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

    Privzeta lastnost, nastavljena za kombinirano polje »Uporabniki«.

  8. V kontrolniku Radio izberite možnost Ekipe, da je kontrolnik Combo box, ki navaja ekipe, prikazan.

  9. Izberite kontrolnik Radio, da prekličete izbiro sedaj nevidnega kontrolnika Combo box za uporabnike.

  10. Izberite vidni kontrolnik Combo box za ekipe in nato nastavite njegovo lastnost DefaultSelectedItems za to formulo:

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

    Privzeta lastnost, nastavljena za kombinirano polje »Ekipe«.

  11. Vstavite kontrolnik Button, ga premaknite pod kontrolnik Combo box in nato nastavite lastnost Text za gumb na "Patch Owner".

  12. Nastavite lastnost OnSelect tega gumba na to formulo:

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

    Formula, nastavljena za kontrolnik gumba.

Kopirana kontrolnika Radio in Combo box prikazujeta lastnika za trenutno izbrani račun v galeriji. Z istima kontrolnikoma lahko z izbiro gumba nastavite lastnika računa za katero koli ekipo ali uporabnika:

Animacija, ki prikazuje popravek lastnika za uporabnika ali ekipo.

Prikaz lastnika z obrazcem

Polje Lastnik lahko znotraj obrazca prikažeš z dodajanjem kartice po meri. Po tem pisanju ne morete spremeniti vrednosti polja s kontrolnikom obrazca.

  1. Vstavite kontrolnik Edit form, nato pa spremenite velikost obrazca in ga premaknite v spodnji desni kot.

  2. Na zavihku Lastnosti ob desni strani zaslona odprite seznam Vir podatkov in izberite Kupci.

    Kontrolnik obrazca, ki prikazuje dodatna polja s praznimi vrednostmi.

  3. Nastavite lastnost obrazca Item na Gallery1.Selected.

    Kontrolnik obrazca, ki prikazuje dodatna polja, zapolnjena z izbranim elementom v galeriji.

  4. Na zavihku Lastnosti ob desni strani zaslona izberite Urejanje polj.

  5. V podoknu Polja izberite tri pike in nato izberite Dodaj kartico po meri.

    Ukaz za dodajanje kartice po meri.

    Nova kartica se prikaže na dnu kontrolnika obrazca.

  6. Po potrebi spremenite velikost kartice, da prikažete vso besedilo.

    Prazna vstavljena kartica po meri.

  7. Vstavite kontrolnik Label v kartico po meri in nato nastavite lastnost Text oznake na formulo, ki ste jo uporabili v galeriji:

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

    Kartica po meri, ki prikazuje polje »Lastnik« v kontrolniku oznake.

Za vsak izbor v galeriji se v obrazcu prikaže več polj kupca, vključno z lastnikom zapisa. Če spremenite lastnika z gumbom Popravek, kontrolnik obrazca prikaže tudi to spremembo.

Animacija, ki prikazuje kontrolnik obrazca, ki se odziva na spremembe v galeriji.

Prikaz stolpcev stranke

V okolju Dataverse je stolpec za iskanje Stranka drugo polimorfno iskanje, ki je zelo podobno stolpcu Lastnik.

Na tabelo je lahko samo en stolpec Lastnik, vendar lahko tabele vključujejo nič, eno ali več stolpcev za iskanje Stranka. Sistemska tabela Stiki vključuje stolpec Ime podjetja, ki je stolpec za iskanje Stranka.

Tabela stikov, ki prikazuje stolpec »Ime podjetja« kot neobvezno vrsto podatkov stranke.

Tabeli lahko dodate več stolpcev za iskanjeStranka tako, da izberete vrsto podatkov Stranka za nov stolpec.

Vrsta podatkov stranke s seznama vrst podatkov pri ustvarjanju stolpca.

Polje za iskanje Stranka se lahko na primer sklicuje na zapis v tabeli Računi ali Stiki. Pri teh tabelah boste uporabili funkciji IsType in AsType, zato je zdaj pravi čas, da jih dodate kot vire podatkov (tabele Ekipe in Uporabniki lahko pustite).

Tabele »Računi«, »Uporabniki« in »Stiki« v podoknu s podatki.

Obravnava polj Stranka in Lastnik je tako podobna, da lahko aplikacijo dobesedno kopirate (Datoteka > Shrani kot in nato določite drugo ime) in izvedite te preproste zamenjave:

LOkacija Vzorec lastnika Vzorec stranke
Globalno Lastnik 'Ime stranke'
Globalno Uporabniki Kupci
Globalno Ekipe Stiki
Lastnost galerije Items Kupci Stiki
Lastnost obrazca Items Kupci Stiki
Prvi argument za Popravek
pri lastnosti gumba OnSelect
Kupci Stiki
Izbirni gumb za filtre lastnosti Items [ "Vse", "Uporabniki", "Ekipe" ] [ "Vse", "Kupci", "Stiki" ]
Izbirni gumb popravka za lastnost Items [ "Uporabniki", "Ekipe" ] [ "Kupci", "Stiki" ]
Lastnost kombiniranega polja Visible "Uporabniki" in "Ekipe" "Kupci" in "Stiki"

Na primer, nova galerija bi morala imeti to lastnost Items:

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

Aplikacija za stranke, pridobljena iz aplikacije lastnika, z uporabo preprostih sprememb.

Dve pomembni razliki med možnostma Stranka in Lastnik zahtevata posodobitev formul znotraj galerije in obrazca:

  1. Odnosi »ena proti mnogo« med tabelama Računi in Stiki imajo prednost, ko se na te vrste tabel sklicujete po imenu. Namesto možnosti Kupci uporabite [@Kupci]; namesto možnosti Stiki uporabite [@Stiki]. Z globalnim operaterjem za pojasnitev dvoma zagotovite, da se sklicujete na vrsto tabele v funkcijah IsType in AsType. Ta težava obstaja samo v kontekstu zapisa za kontrolnike galerije in obrazca.

  2. Polje Lastnik mora imeti vrednost, vendar pa so lahko polja Stranka prazna. Če želite prikazati pravilen rezultat brez imena vrste, preizkus za ta primer opravite s funkcijo IsBlank in namesto tega prikažite prazen niz besedila.

Obe spremembi sta v isti formuli, ki se prikaže pri kartici po meri v obrazcu, kot tudi pri lastnosti Text za kontrolnik oznake galerije:

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

Posodobite na lastnost besedila za kontrolnik oznake podnaslova v galeriji.

S temi spremembami si lahko ogledate in spremenite polje Ime podjetja v tabeli Stiki.

Animacija, ki prikazuje, kako izbira stika spremeni druge kontrolnike in obrazec.

Razumevanje stolpcev za iskanje »Zadeva«

Stolpec za iskanje Zadeva se nekoliko razlikuje od tistih, s katerimi ste že delali v tej temi. Začeli boste z uporabo vzorcev, ki so bili že opisani v tej temi, nato pa se boste naučili drugih trikov.

Začnete lahko preprosto s tabelami Faksi. Ta tabela ima polimorfno polje za iskanje Zadeva, ki se lahko sklicuje na tabele Računi, Stiki in druge. Vzamete lahko aplikacijo za Stranke in jo spremenite za možnost Faksi.

LOkacija Vzorec stranke Vzorec faksov
Globalno 'Ime stranke' Zadeva
Lastnost galerije Items Stiki Faksi
Lastnost obrazca Items Stiki Faksi
Prvi argument za Popravek
pri lastnosti gumba OnSelect
Stiki Faksi

Spet boste morali dodati vir podatkov: tokrat za Fakse. Na zavihku Pogled izberite Viri podatkov:

Podokno s podatki prikazuje tabele »Računi«, »Uporabniki«, »Stiki« in »Faksi«.

Pomembna razlika glede možnostiZadeva je, da ni omejena na entiteti Accounts in Contacts. Seznam tabel je razširljiv s tabelami po meri. Večina aplikacije lahko to spremembo prilagodi brez sprememb, vendar morate posodobiti formulo za oznako v galeriji in obrazcu:

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

Posodobljena lastnost besedila za kontrolnik podnaslova za polja za iskanje »Zadeva«.

Ko opravite te spremembe, uporabljate polje za iskanje Zadeva, enako kot ste to storili pri poljih za iskanje Lastnik in Stranka.

Animacija, ki prikazuje, kako izbira elementa v galeriji spremeni druge kontrolnike in obrazec.

Razumevanje odnosov »Zadeva«

Možnost Zadeva se razlikuje od možnosti Lastnik in Stranka, ker prva vključuje odnos »mnogo-proti-ena«. Po definiciji obratno razmerje (»ena proti mnogo«) omogoča pisanje možnosti First( Accounts ).Faxes.

Vrnimo se nazaj in si oglejmo definicije tabel. V okolju Dataverse so tabele, kot so Faksi, Opravila, E-pošta, Opombe, Telefonski klici, Pisma in Klepeti, označene kot dejavnosti. Ustvarite lahko tudi svoje tabele dejavnosti po meri. Ko si ogledate ali ustvarite tabelo dejavnosti, so njene nastavitve prikazane v razdelku več nastavitev.

Nastavitev tabele dejavnosti pri njenem ustvarjanju.

Druge tabele so lahko povezane s tabelo dejavnosti, če so v nastavitvah tabele omogočene kot opravilo dejavnosti. Računi, Stiki in številne druge standardne tabele so navedene tako (prav tako v razdelku več nastavitev).

Nastavitev opravila dejavnosti pri ustvarjanju tabele.

Vse tabele dejavnosti in tabele opravila dejavnosti imajo nakazan odnos. Če na vrhu zaslona spremenite filter na Vse, izberete tabelo Faksi in nato zavihek Odnosi, se bodo prikazale vse tabele, ki so lahko cilj iskanja Zadeva.

Odnosi tabele »Faksi«, ki prikazuje odnose »mnogo proti ena« za iskanje »Zadeva«.

Če prikažete odnose za tabelo Računi, se bodo prikazale vse tabele, ki so lahko vir polja za iskanje Zadeva.

Odnosi tabele »Računi«, ki prikazuje odnose »ena proti mnogo« za iskanje »Zadeva«.

Kaj vse to pomeni?

  • Ko pišete formule, morate upoštevati, da seznam tabel dejavnosti ni fiksen in lahko ustvarite svojega. Formula mora ustrezno obravnavati tabelo dejavnosti, ki je niste pričakovali.
  • Med opravili dejavnosti in dejavnostmi je odnos »ena proti mnogo«. Preprosto lahko zahtevate vse fakse, ki se nanašajo na kupca.

Če želite raziskati ta koncept v aplikaciji:

  1. Dodajte drug zaslon.

    Vstavite prazen zaslon.

  2. Vstavite kontrolnik galerije, spremenite njegovo velikost in ga nato premaknite na levo stran zaslona.

  3. Na zavihku Lastnosti na desni strani zaslona nastavite Elemente galerije na Accounts.

    Elemente nastavite na kupce v podoknu z lastnostmi.

  4. Nastavite postavitev galerije na Naslov in nato nastavite polje naslova na Ime kupca.

    Postavitev nastavite na naslov pri kontrolniku galerije v podoknu z lastnostmi.

  5. Dodajte drugo galerijo, spremenite njeno velikost in ga nato premaknite na desno stran zaslona.

  6. Nastavite lastnost nove galerije Items na Gallery2.Selected.Faxes.

    Ta korak vrne filtrirani seznam faksov za določenega kupca.

    Nastavite lastnost elementov za galerijo, ki prikazuje fakse.

  7. Nastavite postavitev galerije na Naslov in podnaslov in nato nastavite polje naslova, da bo prikazano polje Zadeva (ki je lahko zadeva v malih črkah).

    Naslov nastavite na polje »Predmet«.

Ko izberete element na seznamu kupcev, seznam faksov prikazuje fakse samo za tega kupca.

Animacija, ki prikazuje izbor v galeriji kupcev, ki vodi seznam faksov.

Tabela dejavnosti

Kot je opisano v prejšnjem razdelku, lahko prikažete vse fakse za kupca. Lahko pa tudi prikažete vse dejavnosti za kupca, vključno s faksi, e-poštnimi sporočili, telefonskimi klici in drugimi interakcijami.

Za slednji scenarij uporabite tabelo Dejavnost. To tabelo lahko prikažete tako, da v zgornjem desnem kotu vklopite možnost Vse, da filter odstranite s seznama tabel.

Seznam tabel, ki prikazuje tabelo »Dejavnost«.

Tabela Dejavnost je posebna. Kadarkoli dodate zapis v tabelo Faksi, sistem ustvari tudi zapis v tabeli Dejavnost s stolpci, ki so skupni vsem tabelam dejavnosti. Med njimi je stolpec Predmet eden najzanimivejših.

Vse dejavnosti lahko prikažete tako, da v prejšnjem primeru spremenite samo eno vrstico. Zamenjajte Gallery2.Selected.Faxes s Gallery2.Selected.Activities.

Sprememba lastnosti elementov za drugo galerijo, spreminjanje iz faksov v dejavnosti.

Zapisi prihajajo iz tabele Dejavnost, vendar lahko kljub temu uporabite funkcijo IsType za identificiranje vrste dejavnosti. Preden uporabite funkcijo IsType z vrsto tabele, morate dodati vir podatkov.

Podokno s podatki, ki prikazuje vse tabele, potrebne za funkcijo »IsType«.

S to formulo lahko v kontrolniku oznake v galeriji prikažete vrsto zapisa:

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

Lastnost besedila nastavite na formulo tako, da prikaže informacije za fakse, telefonske klice in druge dejavnosti.

Lahko tudi uporabite AsType za dostop do polj določene vrste. Ta formula na primer določa vrsto vsake dejavnosti in pri telefonskih klicih prikazuje telefonsko številko in smer klica iz tabele Telefonske številke:

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

Razširjena lastnost besedila z več informacijami za telefonski klic.

Kot rezultat aplikacija prikazuje celoten seznam dejavnosti. Polje Zadeva se prikaže polje za vse vrste dejavnosti, ne glede na to, ali jih formula upošteva ali ne. Za vrste dejavnosti, ki jih poznate, lahko prikažete imena njihovih vrst in informacije za posamezne dejavnosti, specifične za vrste.

Izpolnjen zaslon, ki prikazuje informacije za različne vrste dejavnosti.

Tabela opomb

Zaenkrat vsi primeri Zadeve temeljijo na dejavnostih, tabela Opombe pa predstavlja drug primer.

Ko ustvarite tabelo, lahko omogočite priloge.

Omogočanje prilog in opomb pri ustvarjanju tabele.

Če izberete potrditveno polje za omogočanje prilog, boste ustvarili odnos Zadeva s tabelo Opombe, kot prikazuje ta graf za tabelo Računi:

Odnos tabele »Računi«, ki prikazuje odnos »ena proti mnogo« s tabelo »Opombe«.

Razen te razlike uporabljate polje za iskanje Zadeva na enak način, kot uporabljate dejavnosti. Tabele, ki so omogočene za priloge, so povezane z odnosom »ena proti mnogo« s tabelo Opombe kot v tem primeru:

First( Accounts ).Notes

Opomba

Od pisanja tega članka dalje iskanje Zadeva ni na voljo za tabelo Opombe. Ne morete brati ali filtrirati glede na stolpec Zadeva in stolpca ne morete nastaviti s popravkom.

Vendar pa je na voljo obraten odnos Opombe (»ena proti mnogo«), zato lahko filtrirate seznam opomb za zapis, ki je omogočen za priloge. Uporabite lahko tudi funkcijo povezave za dodajanje opombe tabeli zapisa Opombe, vendar je treba najprej ustvariti opombo, kot v tem primeru:

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

Udeleženci dejavnosti

Po tem pisanju aplikacije s platnom ne podpirajo udeležencev dejavnosti.

Opomba

Ali nam lahko poveste, kateri je vaš prednostni jezik za dokumentacijo? Izpolnite kratko anketo. (upoštevajte, da je v angleščini)

Z anketo boste porabili približno sedem minut. Ne zbiramo nobenih osebnih podatkov (izjava o zasebnosti).