Partekatu honen bidez:


Erlazionatu eta Erlazionatu funtzioak

Hauei aplikatzen zaie: Canvas aplikazioei Ereduetan oinarritutako aplikazioei

Lotu eta ez lotu bi taulen erregistroak bat-askoren edo askoren arteko harreman baten bidez.

Deskribapenak

Relate funtzioak bi erregistro lotzen ditu erlazio bat edo asko edo asko eta askoren arteko erlazioak Microsoft Dataverse-n. Unrelate funtzioak prozesua berraztertzen du eta esteka ezabatzen du.

Batetik askorako harremanetarako, Askoren taulak kanpoko gakoen eremua du, Baten taulako erregistroa seinalatzen duena. Erlazionatu eremuak ezartzen du Baten taulako erregistro zehatz bat seinalatzeko, bitartean Kendu lotura eremu hau ezartzen du hutsik gisa. Eremua dagoeneko ezarrita badago Erlazionatu deitzen da, lehendik dagoen esteka galdu egiten da lotura berriaren alde. Eremu hau ezar dezakezu Patch funtzioa edo Edit form kontrolatzeko; ez duzu erabili behar Relate funtzioa.

Asko eta askoren arteko harremanetarako, erregistroak lotzen dituen sistemak bat egin du ezkutuko batu-taula. Ezin duzu sartzeko taulara zuzenean sartu; bakarreko proiekzio baten bidez soilik irakur daiteke eta sarean barrena Relate eta Unrelate funtzioak. Lotutako taulak ez du atzerriko giltzarik.

Lehenengo argumentuan zehaztutako taularen datuak freskatuko dira aldaketa islatzeko, baina bigarren argumentuan zehazten dituzun taularen datuak ez. Datu horiek eskuz freskatu behar dira Refresh funtzioa eragiketaren emaitza erakusteko.

Funtzio hauek ez dira inoiz erregistro bat sortu edo ezabatzen. Dagoeneko existitzen diren bi erregistroak soilik erlazionatu edo erlazioa kentzen dituzte.

Funtzio horiek barruan bakarrik erabil ditzakezu portaera-formuletan.

Oharra

Funtzio hauek aurrebistako funtzio baten parte dira, eta haien portaera erabilgarri dagoenean bakarrik dago erabilgarri Datu erlazionalak, aukera-multzoak eta CDSrako beste eginbide berriak funtzioa gaituta dago. Aplikazioen ezarpen hau aplikazio berrientzako lehenespenez gaituta dago. Eginbide hau aldatzeko, hautatu Ezarpenak, eta hautatu Datozen eginbideak. Zure iritzia oso baliotsua da guretzat. Mesedez, adierazi iezaguzu zer uste duzun Power Apps komunitateko foroetan.

Sintaxia

Erlazionatu( Table1RelatedTable, Table2Record )

  • Table1RelatedTable - Beharrezkoa. Table1 taularen erregistrorako, Table2 taularen bat-askoren edo askoren arteko harremanen bidez erlazionatutako erregistroak.
  • Table2Record - Beharrezkoa. Table2 erregistroa harremana gehitzeko.

Kendu erlazioa( Table1RelatedTable, Table2Record )

  • Table1RelatedTable - Beharrezkoa. Table1 taularen erregistrorako, Table2 taularen bat-askoren edo askoren arteko harremanen bidez erlazionatutako erregistroak.
  • Table2Record - Beharrezkoa. Table2 erregistroa harremanetik kentzeko.

Adibideak

Kontuan hartu Produktuak taula ondorengo erlazio hauekin, Power Apps atariaren taula bistaratzailean ikusi bezala:

Erlazioaren bistaratzeko izena Erlazionatutako taula Erlazio mota
Produktuaren erreserba Erreserba Batetik zenbaitetara
Produktuak ↔ kontaktua Contact Hainbatetik hainbatera

Produktuak eta Erreserbak batetik hainbatera harremanen bidez erlazionatuta daude. Erreserbak taularen lehen erregistroa erlazionatzeko Produktuak taularen lehen erregistroarekin:

Relate( First( Products ).Reservations, First( Reservations ) )

Erregistro horien arteko erlazioa ezabatzeko:

Unrelate( First( Products ).Reservations, First( Reservations ) )

Inoiz ez genuen sortu edo kendu edo erregistro bat, erregistroen arteko erlazioa soilik aldatu zen.

Produktuak eta Kontaktuak hainbatetik hainbatera harremanen bidez erlazionatuta daude. Kontaktuak taularen lehen erregistroa erlazionatzeko Produktuak taularen lehen erregistroarekin:

Relate( First( Products ).Contacts, First( Contacts ) )

Hainbatetik hainbatera motako erlazioak simetrikoak direnez, kontrako norabidean ere egin genezake:

Relate( First( Contacts ).Products, First( Products ) )

Erregistro horien arteko erlazioa ezabatzeko:

Unrelate( First( Products ).Contacts, First( Contacts ) )

bestela:

Unrelate( First( Contacts ).Products, First( Products ) )

Ondorengo ibilaldiak tauletan eragiketa hauek egiten ditu zehazki aplikazio batekin Galeria eta Konbinazio kutxa parte hartzen duten erregistroen hautatzeko kontrolak.

Adibide hauek zure ingurunean instalatzen ari diren laginen datuen araberakoak dira. Edo sortu probako ingurune lagin-datuak barne edo gehitu lagin-datuak lehendik dagoen ingurune batean.

Batetik zenbaitetara

Relate funtzioa

Lehenik eta behin aplikazio sinple bat sortuko duzu produktu batekin lotutako erreserbak ikusteko eta esleitzeko.

  1. Sortu tableta-aplikazio bat hutsetik.

  2. ikusi fitxan, hautatu Datu-iturburuak.

  3. Datuak panelean, hautatu Gehitu datuak> hautatu Produktuak.
    Produktuen taula goian kargatutako lagin-datuen zati bat da.

  4. Txertatu fitxan, gehitu Galeria kontrol huts bertikala.

  5. Ziurtatu gehitu berri duzun kontrola izendatuta dagoela Gallery1 eta, ondoren, mugitu eta tamaina aldatu pantailaren ezkerraldea betetzeko.

  6. Propietateak fitxan, ezarri Gallery1 eremuaren Elementuak propietatea Produktuak eta bere Diseinua aukeretan Irudia eta izenburua aukeran.

    Konfiguratu ProductsGallery.

  7. Gallery1 aukeran, ziurtatu Label kontrola Title1 izena duela eta, ondoren, ezarri Testua propietatea ThisItem.Name gisa.

    Konfiguratu etiketa Gallery1-en.

  8. Hautatu pantaila hurrengo elementuan sartu ez dadin Gallery1. Gehitu bigarren Galeria kontrol huts bertikala eta ziurtatu Gallery2 izena duela.

    Gallery2 erabiltzaileak Gallery1 aukeran aukeratutako edozein produkturen erreserbak erakutsiko ditu.

  9. Mugitu eta tamaina aldatu Gallery2 pantailaren goiko eskuineko koadrantea betetzeko.

  10. (aukerakoa) Gehitu Label kontrol urdina Gallery2 gainetik, hurrengo grafikoak erakusten duen moduan.

  11. Formula-barran, ezarri Elementuak propietatea Gallery2 Gallery1.Selected.Reservations gisa.

    Konfiguratu Gallery2 elementuak.

  12. Propietateen panelean, ezarri Gallery2 aukeraren Diseinua Izenburua gisa.

    Konfiguratu Gallery2 diseinua.

  13. Gallery2, gehitu Konbinazio-koadroa kontrola, ziurtatu ComboBox1 izena duela eta, ondoren, mugitu eta tamaina aldatu, beste kontrolak blokeatu ez daitezen Gallery2.

  14. Propietateak fitxan, ezarri ComboBox1 aukeraren Elementuak propietatea Produktuak gisa.

    Ezarri Elementuak propietatea Produktuak gisa.

  15. Joan Propietateak fitxara eta ezarri ComboBox1 aukeraren Baimendu hainbat hautapen propietatea Desaktibatuta gisa.

    Ezarri Onartu hainbat hautapen Desaktibatuta gisa.

  16. Formula-barran, ezarri ComboBox1 aukeraren DefaultSelectedItems propietatea TheItem.'Product Reservation' gisa.

    Ezarri DefaultSelectedItems ReserveCombo aukeran.

  17. Gallery2 aukeran, ezarri NextArrow2 aukeraren OnSelect propietatea formula honetan:

    Relate( ComboBox1.Selected.Reservations, ThisItem )
    

    Erabiltzaileak ikono hau hautatzen duenean, uneko erreserba erabiltzaileak aukeratutako produktuan aldatuko da ComboBox1.

    Konfiguratu NextArrow2.

  18. Sakatu F5 aplikazioa Aurrebista moduan probatzeko.

Aplikazio honen bidez, erabiltzaileak erreserba produktu batetik bestera eraman dezake. Produkturen batean erreserba egiteko, erabiltzaileak beste produktu bat aukeratu dezake ComboBox1 eta ondoren hautatu NextArrow2 erreserba hori aldatzeko.

Erakutsi erlazionatu funtzioa aplikazio bakarreko aplikazioan.

Unrelate funtzioa

Puntu honetan, erlazioa erregistro batetik bestera eraman dezakezu, baina ezin duzu erlazioa guztiz kendu. Erabil dezakezu Unrelate edozein funtzio erreserba erregistro bat deskonektatzeko.

  1. ikusi fitxan, hautatu Datu-iturburuak.

  2. Datuak panelean, hautatu Gehitu datu-iturburua>Microsoft Dataverse>Erreserbak>Konektatu.

  3. Gallery2 aukeran, ezarri NextArrow2 aukeraren OnSelect propietatea formula honetan:

    If( IsBlank( ComboBox1.Selected ),
        Unrelate( Gallery1.Selected.Reservations, ThisItem ),
        Relate( ComboBox1.Selected.Reservations, ThisItem )
    );
    Refresh( Reservations )
    

    Konfiguratu eskuineko ikonoa.

  4. Kopiatu Gallery2 arbelera hautatu eta gero Ktrl-C sakatuz.

  5. Itsatsi Gallery2 kopia bat pantaila berean Ktrl-V sakatuz eta, ondoren, eraman pantailaren behe-eskuin koadrantera.

  6. (aukerakoa) Goiko etiketa gehitu baduzu Gallery2 gainean, errepikatu etiketa horretarako aurreko bi pausoak.

  7. Ziurtatu Gallery2 honen kopia du izena Gallery2_1 eta, ondoren, ezarri bere Elementuak propietatea formula honetan:

    Filter( Reservations, IsBlank( 'Product Reservation' ) )
    

    Delegazioen abisua agertzen da, baina ez du axola adibide honetako datu kopuru txikiarekin.

    Ezarri Gallery2_1 galeriaren Elementuak propietatea.

Aldaketa horien bidez, erabiltzaileek aukeraketa garbitu dezakete ComboBox1 kontakturen bat pertsona horrek produktu bat erreserbatu ez badu. Produktu bat erreserbatu ez duten kontaktuak agertzen dira Gallery2_1 erabiltzaileek kontaktu bakoitza produktu bati eslei diezaioketen.

Erakutsi Erlazionatu eta Kendu erlazioa funtzioak aplikazio bakarreko aplikazioan.

Hainbatetik hainbatera

Sortu hainbatetik hainbatera erlazio berria

Laginaren datuek ez dute askoren arteko erlaziorik, baina bat sortuko duzu Produktuen taularen eta Kontaktuen taularen artean. Erabiltzaileek produktu bakoitza kontaktu bat baino gehiagorekin eta kontaktu bakoitza produktu bat baino gehiagorekin erlaziona dezakete.

  1. Orrialde honetan, hautatu Datuak ezkerreko nabigazio barran eta hautatu Taulak.

    Ireki taulen zerrenda.

  2. Aldatu taulako iragazkia taula guztiak sartzeko.

    Berez, lagin-taulak ez dira agertzen.

    Kendu taularen iragazkia.

  3. Joan behera, ireki Produktua taula, eta hautatu Harremanak.

  4. Aukeratu Gehitu erlazioa>Hainbatetik hainbatera.

  5. Aukeratu Kontaktua taula erlazio honetarako.

  6. Hautatu Eginda>Gorde taula.

Erlazionatu eta kendu kontaktuen erlazioa produktu batekin edo gehiagorekin

Gai honetan lehen sortutakoarekin antza duen beste aplikazio bat sortuko duzu, baina aplikazio berriak Hainbatetik hainbatera erlazio bat eskainiko ditu. Kontaktu bakoitzak produktu bakarra erreserbatu ahal izango du.

  1. Tabletetarako aplikazio huts batean, sortu Gallery1 lehen prozedura gisa gai honetan deskribatzen da.

  2. Gehitu beste Galeria kontrol huts bertikala, ziurtatu Gallery2 izena duela eta, ondoren, eraman pantailaren goiko eskuineko izkinan.

    Geroago gai honetan, gehitu egingo duzu Combo box kontrola Gallery2 aukeran.

  3. Formula-barran, ezarri Gallery2 aukeraren Elementuak propietatea Gallery1.Selected.Contacts gisa.

    Konfiguratu ContactsGallery - Items propietatea.

  4. Propietateak fitxan, ezarri Diseinua Irudia eta izenburua aukeran.

    Konfiguratu ContactsGallery - Layout.

  5. Gallery2 aukeran, ziurtatu Label kontrola Title2 izena duela eta, ondoren, ezarri Testua propietatea ThisItem.'Full Name' gisa.

    Kontrol horretan ez da testurik agertuko prozedura amaitu eta produktu bati kontaktua esleitu arte.

    Erakutsi kontaktuaren izena.

  6. Ezabatu NextArrow2 , sartu Utzi ikonoa eta ziurtatu icon1 izena duela.

  7. Ezarri Utzi ikonoaren OnSelect propietatea formula honetan:

    Unrelate( Gallery1.Selected.Contacts, ThisItem )
    

    Konfiguratu Utzi ikonoa.

  8. ikusi fitxan, hautatu Datu-iturburuak.

  9. Datuak panelean, hautatu Gehitu datu-iturburua>Microsoft Dataverse>Kontaktuak>Konektatu.

  10. Gallery2 aukeran, gehitu Combo box kontrola, ziurtatu ComboBox1 izena duela eta, ondoren, ezarri bere Elementuak propietatea Kontaktuak aukeran.

    Konfiguratu konbinazio-koadroaren Elementuak propietatea.

  11. Propietateak fitxan, ezarri Baimendu hainbat hautapen Desaktibatuta gisa.

    Konfiguratu konbinazio-koadroaren Diseinua propietatea.

  12. Txertatu Gehitu ikonoa eta ezarri OnSelect propietatea formula honetan:

    Relate( Gallery1.Selected.Contacts, ComboBox1.Selected )
    

    Konfiguratu Gehitu ikonoa.

Aplikazio honekin, erabiltzaileek kontaktu multzo bat askatasunez erlazionatu eta erlazioa ken dezakete produktu bakoitzarekin.

  • Produktu bati kontaktua gehitzeko, hautatu kontaktua pantailaren behealdeko konbinazio koadroan eta, ondoren, hautatu Gehitu ikonoa.

  • Produktu bateko kontaktua kentzeko, hautatu kontaktu horren Utzi ikonoa.

    Batetik hainbatera ez bezala, hainbatetik hainbatera erlazioak erabiltzaileek kontaktu bera produktu anitzekin lotzeko aukera ematen du.

Erakutsi Erlazionatu eta Kendu erlazioa funtzioak hainbatetik hainbatera aplikazioan.

Alderantziz: kontaktu ugariak dituzten produktuak erlazionatu eta ez lotu

Hainbatetik hainbatera erlazioak simetrikoak dira. Adibidea hedatu dezakezu kontaktuak produktuak gehitzeko eta ondoren bi pantailetara pasatu erlazioa norabide batetik nola agertzen den erakusteko.

  1. Ezar ezazu OnVisible propietatea Screen1 aukerakoa Freskatu (Produktuak).

    Bat-askoren edo askoren arteko harreman bat eguneratzen duzunean, fitxategiaren lehen argumentu taulako Erlazionatu edo Kendu erlazioa deiaren datuak freskatzen dira. Bigarrena eskuz freskatu behar da aplikazio honen pantailetan irauli nahi baduzu.

    Ezarri OnVisible propietatea freskatu funtzioan.

  2. Bikoiztu Screen1.

    Bikoiztua Screen1_1 izendatuko da eta harremanen ikuspegitik erlazioak aztertzeko oinarria.

    Bikoiztu pantaila bat.

  3. Alderantzizko ikuspegia sortzeko, aldatu formula hauek kontrolen gainean Screen1_1:

    • Screen1_1.OnVisible = Refresh( Contacts )
    • Gallery1_1.Items = Contacts
    • Title1_1.Text = ThisItem.'Full Name'
    • Label1_1.Text = "Selected Contact Products"
    • Gallery2_1.Items = Gallery1_1.Selected.Products
    • Title2_1.Text = ThisItem.Name
    • Icon1_1.OnSelect = Unrelate( Gallery1_1.Selected.Products, ThisItem )
    • ComboBox1_1.Items = Products
    • Icon2_1.OnSelect = Relate( Gallery1_1.Selected.Products, ComboBox1_1.Selected )

    Emaitza aurreko pantailaren oso antzekoa izango da, baina harremana izango du Kontaktuak aukeran.

    Erakutsi hainbatetik hainbatera erlazioa kontaktuekin hasita.

  4. Sartu Geziak behera ikonoa eta ezarri OnSelect propietatea Nabigatu (Screen1, Bat ere ez) aukeran. Gauza bera egin Screen1 formularekin Nabigatu (Screen1_1, Bat ere ez).

    Pantailen artean nabigazioa gehitu.

Pantaila berri honekin, erabiltzaileek produktu bati kontaktua gehitu diezaiokete eta kontaktuen ikuspegira jo dezakete eta horrekin lotutako produktua ikusteko. Erlazioak simetrikoak dira eta bi pantailen artean partekatzen dira.

Erakutsi hainbatetik hainbatera erlazioa alde bietatik.