Delen via


Tabelrelaties

Tabelrelaties bepalen hoe rijen in de database aan elkaar kunnen worden gerelateerd. Op het meest eenvoudige niveau wordt door het toevoegen van een opzoekkolom aan een tabel een nieuwe 1:N (een-op-veel)-relatie tussen de twee tabellen gemaakt en kunt u die opzoekkolom in een formulier plaatsen. Met de opzoekkolom kunnen gebruikers meerdere onderliggende rijen van die tabel aan één bovenliggende tabelrij koppelen.

De gebruiker kan niet alleen eenvoudig vaststellen hoe rijen aan andere rijen kunnen worden gerelateerd, maar met 1:N-tabelrelaties ook gegevens bieden om de volgende vragen te beantwoorden:

  • Als ik een rij verwijder, moeten er dan ook aan die rij gerelateerde rijen worden verwijderd?
  • Wanneer ik een rij heb toegewezen, moet ik dan ook alle rijen die zijn gerelateerd aan die rij aan de nieuwe eigenaar toewijzen?
  • Hoe kan ik het proces van de gegevensinvoer soepeler en sneller laten verlopen wanneer ik een nieuwe verwante rij in de context van een bestaande rij maak?
  • Hoe kan de persoon die een rij bekijkt de verwante rijen bekijken?

Tabellen kunnen ook deel uitmaken van N:N (veel-op-veel)-relaties waarbij een willekeurig aantal rijen voor twee tabellen aan elkaar kunnen worden gekoppeld.

Bepalen of u tabelrelaties of verbindingen moet gebruiken

Tabelrelaties zijn de metagegevens die wijzigingen aan een database aanbrengen. Dankzij deze relaties kunt u via zoekopdrachten efficiënt verwante gegevens opzoeken. Gebruik tabelrelaties om formele relaties aan te duiden die de tabel definiëren of waar de meeste rijen gebruik van kunnen maken. Zo is een verkoopkans zonder potentiële klant bijvoorbeeld niet nuttig. De tabel Verkoopkans staat ook in N:N-relatie met de tabel Concurrent. Hierdoor kunnen meerdere concurrenten aan de verkoopkans worden toegevoegd. U wilt deze gegevens misschien vastleggen een een rapport maken waarin de concurrenten worden weergegeven.

Er zijn andere minder formele soorten relaties tussen rijen die verbindingen worden genoemd. Het kan bijvoorbeeld handig zijn om te weten of twee contactpersonen getrouwd zijn, of dat ze mogelijk buiten het werk om bevriend zijn, of dat de contactpersoon wordt gebruikt om met een andere account te werken. De meeste bedrijven zullen geen rapporten met dergelijke informatie genereren of vereisen dat die wordt ingevoerd, dus loont het waarschijnlijk niet de moeite tabelrelaties te creëren. Meer informatie: Verbindingsrollen configureren

Typen tabelrelaties

Wanneer u de oplossingenverkenner bekijkt, denkt u misschien dat er drie verschillende typen tabelrelaties bestaan. Het zijn er in feite slechts twee, zoals aangegeven in de volgende tabel.

Relatietype Beschrijving
1:N (Een-op-veel) Een tabelrelatie waarbij één tabelrij voor de Primaire tabel kan worden gekoppeld aan een groot aantal andere rijen in de Gerelateerde tabel vanwege een opzoekkolom in de gerelateerde tabel.

Wanneer u een primaire tabelrij bekijkt, kunt u een lijst met gerelateerde tabelrijen zien die erbij horen.

In de Power Apps-portal vertegenwoordigt Huidige tabel de primaire tabel.
N:N (Veel-op-veel) Een tabelrelatie die afhankelijk van een speciale Relatietabel is, ook wel een doorsnedentabel genoemd, zodat veel rijen van de ene tabel aan veel rijen van een andere tabel kunnen worden gerelateerd.

Wanneer u rijen op van een van deze tabellen in een N:N-relatie bekijkt, kunt u een lijst zien van rijen van de andere tabel die daaraan zijn gerelateerd.

Het relatietype N:1 (veel-op-één) bestaat in de gebruikersinterface aangezien de oplossingenverkenner u een weergave toont die is gegroepeerd op tabellen. 1:N-relaties bestaan eigenlijk tussen tabellen en verwijzen naar elke tabel als een Primaire/huidige tabel of een Gerelateerde tabel. De gerelateerde tabel, ook wel de onderliggende tabel genoemd, heeft een opzoekkolomwaarin een verwijzing naar een rij van de primaire tabel, ook wel de bovenliggende tabel genoemd, kan worden opgeslagen. Een N:1-relatie is simpelweg een 1:N-relatie gezien vanuit het perspectief van de gerelateerde tabel.

Tabelrelatiegedrag

Gedrag voor gerelateerde tabellen is belangrijk omdat het u helpt gegevensintegriteit te waarborgen en u er bedrijfsprocessen voor uw bedrijf mee kunt automatiseren.

Behoud van gegevensintegriteit

Sommige tabellen bestaan om andere tabellen te ondersteunen. Zonder andere entiteiten zouden ze geen enkel doel dienen. Ze hebben doorgaans een vereist opzoekkolom voor de koppeling met de primaire tabel die zij ondersteunen. Wat moet er gebeuren als een primaire rij wordt verwijderd?

U kunt het relatiegedrag gebruiken om te definiëren wat er gebeurt met gerelateerde rijen op basis van de regels voor uw bedrijf. Meer informatie: Geavanceerd relatiegedrag toevoegen

Bedrijfsprocessen automatiseren

Stel dat u een nieuwe verkoper hebt en u aan die verkoper een aantal bestaande accounts wilt toewijzen die momenteel aan een andere verkoper zijn toegewezen. Aan elke accountrij kan een aantal taakactiviteiten worden gekoppeld. U kunt de actieve accounts die u opnieuw wilt toewijzen aan een de nieuwe verkoper eenvoudig vinden. Maar wat moet er met de taakactiviteiten gebeuren die aan de accounts zijn gerelateerd? Wilt u elke taak openen en besluiten of die ook aan de nieuwe verkoper moet worden toegewezen? Waarschijnlijk niet. In plaats daarvan kunt u de relatie automatisch bepaalde standaardregels laten instellen. Deze regels zijn alleen van toepassing op taakrijen die aan de accounts zijn gekoppeld die u opnieuw toewijst. U hebt de volgende opties:

  • Alle actieve taken opnieuw toewijzen.
  • Alle taken opnieuw toewijzen.
  • Geen taken opnieuw toewijzen.
  • Alle momenteel toegewezen taken opnieuw toewijzen aan de vorige eigenaar van de accounts.

Met de relatie kan worden bepaald hoe bewerkingen op een rij voor de trapsgewijze ordening van de primaire tabelrij naar verwante tabelrijen omlaag worden uitgevoerd.

Gedragingen

Er zijn verschillende soorten gedragingen die kunnen worden toegepast bij bepaalde acties.

Gedrag Beschrijving
Actieve items trapsgewijs ordenen Voer de actie op alle actieve gerelateerde tabelrijen uit.
Alle items trapsgewijs ordenen Voer de actie op alle gerelateerde tabelrijen uit.
Geen items trapsgewijs ordenen Niets doen.
Koppeling verwijderen Verwijder de opzoekwaarde voor alle gerelateerde rijen.
Beperken Voorkomen dat de primaire tabelrij wordt verwijderd wanneer er gerelateerde tabelrijen bestaan.
Items waarvan gebruiker eigenaar is trapsgewijs ordenen De actie op alle gerelateerde tabelrijen uitvoeren waarvan de eigenaar dezelfde is als die van de primaire tabelrij.

Acties

Dit zijn de acties die bepaalde gedragingen kunnen activeren:

Kolom Beschrijving Opties
Toewijzen Wat moet er gebeuren als de primaire tabelrij aan iemand anders wordt toegewezen? Alles trapsgewijs
Trapsgewijs actief
Gebruiker-eigenaar trapsgewijs
Geen it. trapsgewijs
Nieuw bovenliggend element maken Wat moet er gebeuren als de opzoekwaarde van een gerelateerde tabel in een bovenliggende relatie wordt veranderd?
Meer informatie: Bovenliggende tabelrelaties
Alles trapsgewijs
Trapsgewijs actief
Gebruiker-eigenaar trapsgewijs
Geen trapsgewijs
Delen Wat moet er gebeuren als de primaire tabelrij wordt gedeeld? Alles trapsgewijs
Trapsgewijs actief
Gebruiker-eigenaar trapsgewijs
Geen trapsgewijs
Verwijderen Wat moet er gebeuren als de primaire tabelrij wordt verwijderd? Alles trapsgewijs
Artikel ontkoppelen
Beperken
Delen opheffen Wat moet er gebeuren als het delen van een primaire tabelrij ongedaan wordt gemaakt? Alles trapsgewijs
Trapsgewijs actief
Gebruiker-eigenaar trapsgewijs
Geen trapsgewijs
Samenvoegen Wat moet er gebeuren als een primaire tabelrij wordt samengevoegd? Alles trapsgewijs
Geen trapsgewijs
Samenvouwweergave Wat is het gewenste gedrag van de samenvouwweergave die aan deze relatie is gekoppeld? Alle it. trapsgewijs
Act. it. trapsgewijs
Gebruiker-eigenaar trapsgewijs
Geen it. trapsgewijs

Notitie

De acties voor toewijzen, verwijderen, samenvoegen en nieuw bovenliggend element worden niet uitgevoerd in de volgende situaties:

  • Als de oorspronkelijke bovenliggende rij en de aangevraagde actie dezelfde waarden bevatten. Voorbeeld: proberen om een toewijzing te activeren en een contactpersoon te kiezen die al de eigenaar van de rij is
  • Proberen een actie uit te voeren op een bovenliggende rij waarop al een trapsgewijze actie wordt uitgevoerd

Notitie

Bij het uitvoeren van een toewijzing, worden alle werkstromen of bedrijfsregels die momenteel actief zijn op de rijen, automatisch gedeactiveerd wanneer de nieuwe toewijzing plaatsvindt. De nieuwe eigenaar van de rij moet de werkstroom of bedrijfsregel opnieuw activeren als hij deze wil blijven gebruiken.

Bovenliggende tabelrelaties

Elk paar tabellen dat in aanmerking komt voor een 1:N-relatie kan meerdere onderlinge 1:N-relaties hebben. Toch kan gewoonlijk slechts één van deze relaties als een bovenliggende tabelrelatie worden beschouwd.

Een bovenliggende tabelrelatie is elke 1:N-tabelrelatie waarbij een van de trapsgewijze opties in de kolom Bovenliggend van de volgende tabel true is.

Actie bovenliggend Not Parental
Toewijzen Alle it. trapsgewijs
Gebruiker-eigenaar trapsgewijs
Act. it. trapsgewijs
Geen it. trapsgewijs
Verwijderen Alle it. trapsgewijs RemoveLink
Beperken
Nieuw bovenliggend element maken Alle it. trapsgewijs
Gebruiker-eigenaar trapsgewijs
Act. it. trapsgewijs
Geen it. trapsgewijs
Delen Alle it. trapsgewijs
Gebruiker-eigenaar trapsgewijs
Act. it. trapsgewijs
Geen it. trapsgewijs
Delen opheffen Alle it. trapsgewijs
Gebruiker-eigenaar trapsgewijs
Trapsgewijs actief
Geen trapsgewijs

Als u bijvoorbeeld een nieuwe aangepaste tabel maakt en een 1:N-tabelrelatie toevoegt met de accounttabel waarbij uw aangepaste tabel de gerelateerde tabel is, kunt u de acties voor die tabelrelatie configureren voor het gebruik van opties in de kolom Bovenliggend. Als u later nog een 1:N-tabelrelatie toevoegt met uw aangepaste tabel als verwijzende tabel kunt u alleen de acties configureren om de opties in de kolom Niet bovenliggend te gebruiken.

Meestal betekent dit dat voor elk tabelpaar er slechts één bovenliggende relatie is. Er zijn enkele situaties waarbij het opzoekveld in de gerelateerde tabel een relatie met meer dan één tabeltype kan toestaan.

Als bijvoorbeeld een tabel een opzoekveld Klant heeft dat naar een contactpersoon- of accounttabel kan verwijzen. Er zijn twee afzonderlijke bovenliggende 1:N-tabelrelaties.

Elke activiteitstabel heeft een soortgelijke set bovenliggende tabelrelaties voor tabellen die kunnen worden gekoppeld met de opzoekkolom Betreft.

De beperkingen voor gedrag dat u kunt instellen

Vanwege bovenliggende relaties zijn er enkele beperkingen waarmee u rekening moet houden als u tabelrelaties definieert.

  • Een aangepaste tabel kan niet de primaire tabel zijn in een relatie met een gerelateerde systeemtabel die trapsgewijs is geordend. Dit betekent dat u geen relatie kunt hebben met een actie die is ingesteld op Alle items trapsgewijs, Actieve items trapsgewijs of Gebruiker-eigenaar trapsgewijs, tussen een primaire aangepaste tabel en een gerelateerde systeemtabel.
  • Nieuwe relaties kunnen geen acties hebben die zijn ingesteld op Alle items trapsgewijs, Actieve items trapsgewijs of Gebruiker-eigenaar trapsgewijs als de gerelateerde tabel in die relatie al bestaat als een gerelateerde tabel in een andere relatie met acties die zijn ingesteld op Alle items trapsgewijs, Actieve items trapsgewijs of Gebruiker-eigenaar trapsgewijs. Op deze manier worden relaties voorkomen die relaties veroorzaken met meerdere bovenliggende elementen.

Opschonen van overgenomen toegangsrechten

Het gebruik van trapsgewijs gedrag van Opnieuw bovenliggend maken en Delen is handig als u toegang wilt bieden tot rijen in gerelateerde tabellen. Maar er kan een verandering in het proces of ontwerp zijn die een wijziging van de instellingen voor trapsgewijs gedrag vereist.

Wanneer een tabelrelatie Opnieuw bovenliggend maken of Delen gebruikt, en het trapsgewijze gedrag wordt gewijzigd in Geen trapsgewijs, voorkomt de tabelrelatie dat nieuwe machtigingswijzigingen trapsgewijs naar de gerelateerde onderliggende tabellen gaan. Bovendien moeten overgenomen machtigingen die zijn verleend terwijl het trapsgewijze gedrag actief was, worden ingetrokken.

Opschonen van overgenomen toegangsrechten is een systeemtaak die de verouderde overgeërfde toegangsrechten opschoont die overblijven nadat het trapsgewijze gedrag is gewijzigd naar Geen trapsgewijs. Deze opschoning heeft geen invloed op een gebruiker die rechtstreeks toegang tot een tabel heeft gekregen, maar zal de toegang verwijderen van iedereen die alleen toegang heeft gekregen via overname.

Zo werkt het opschonen van overgenomen toegangsrechten:

  1. Identificeert en verzamelt alle tabellen die in een trapsgewijze relatie stonden met het bijgewerkte bovenliggende item.
  2. Identificeert en verzamelt de gebruikers die toegang hebben gekregen tot de gerelateerde tabellen via overgenomen toegang.
  3. Controleert op gebruikers die directe toegang hebben gekregen tot een gerelateerde tabel en verwijdert deze uit de verzameling.
  4. Verwijdert overgenomen toegang voor de verzamelde gebruikers tot de verzamelde tabellen.

Nadat het opschonen is uitgevoerd, hebben gebruikers die alleen toegang hadden tot gerelateerde tabellen vanwege de trapsgewijze functie, geen toegang meer tot de rijen, wat voor meer veiligheid zorgt. Er zijn gevallen waarin het opschonen mogelijk niet succesvol is. Meer informatie over het opschonen van overgenomen toegangsrechten

Zie ook

Systeemtaken controleren
1:N- (één-op-veel) of N:1-relaties (veel-op-één) maken en bewerken
N:N-tabelrelaties (veel-op-veel) maken

Notitie

Laat ons uw taalvoorkeuren voor documentatie weten! Beantwoord een korte enquête. (houd er rekening mee dat deze in het Engels is)

De enquête duurt ongeveer zeven minuten. Er worden geen persoonlijke gegevens verzameld (privacyverklaring).