Werken met gerelateerde tabellen > Relatiecriteria > Eenzijdige relaties
 
Eenzijdige relaties
In een eenzijdige relatie worden de gegevens in het ene veld vergeleken met de gegevens in een ander veld.
Zo wordt een record in een van de tabellen bijvoorbeeld gerelateerd aan een andere record uit de andere tabel wanneer de waarden in Tekstveld A en Tekstveld B identiek zijn.
Twee tabellen met lijnen tussen twee velden die een eenzijdige relatie aantonen
Een eenzijdige relatie gebruiken
Gebruik een eenzijdige relatie om twee tabellen in een relatie aan elkaar te koppelen op basis van één gemeenschappelijke waarde, bijvoorbeeld een serie- of klantnummer. Bijvoorbeeld:
1. Maak een database met deze twee tabellen:
Klanten, waarin namen en adressen zijn opgeslagen
Contactgegevens, waarin telefoonnummers, soorten telefoonnummers (zoals werk, thuis, mobiel, enzovoort) en e-mailadressen zijn opgeslagen
De gegevens zijn opgesplitst in twee afzonderlijke tabellen omdat elke klant meerdere telefoonnummers en e-mailadressen kan hebben.
2. Maak de volgende velden:
 
Tabel
Veldnaam
Opmerking
Klanten
Klantnummer
Getalveld
 
Voornaam
Tekstveld
 
Achternaam
Tekstveld
 
Adres 1
Tekstveld
 
Plaats
Tekstveld
 
Toestand
Tekstveld
 
Land
Tekstveld
Contactpersonen
Telefoonnummer
Tekstveld
 
Type telefoon
Tekstveld
 
E-mailadres
Tekstveld
 
Type e-mail
Tekstveld
 
Klantnummer
Getalveld
3. Gebruik het dialoogvenster 'Opties voor veld' om in te stellen dat in het veld Klanten::Klantnummer automatisch een volgnummer wordt ingevoerd en om te controleren of het veld unieke waarden bevat. Raadpleeg Opties instellen voor velden.
Deze instellingen verzekeren dat elke record in de tabel 'Klanten' een uniek nummer heeft.
In de tabel 'Contactpersonen' is 'Klantnummer' een eenvoudig getalveld. Stel daarom geen opties voor automatische invoer in maar stel wel in dat het veld niet leeg mag zijn.
4. Maak in de relatiegrafiek een relatie tussen de velden 'Klantnummer' in beide tabellen. ('Klantnummer' is het vergelijkingsveld in beide tabellen.)
Een eenzijdige relatie tussen de tabellen ‘Klanten’ en ‘Contactpersonen’
5. In het dialoogvenster 'Relatie bewerken':
Selecteer Maken van records in deze tabel toegestaan via deze relatie voor de tabel 'Contactpersonen'. Wanneer u een telefoonnummer in een lege portaalrij invoert, maakt FileMaker Pro automatisch een gerelateerde record voor dat telefoonnummer.
Aangezien de relatie zo is gedefinieerd dat nieuwe gerelateerde records in de tabel Contactgegevens kunnen worden gemaakt, zal het klantnummer uit een klantrecord automatisch worden ingevoegd in het veld 'Klantnummer' in de tabel 'Klanten' in elke nieuwe gerelateerde record. Op die manier kunt u meerdere records in de tabel Contactgegevens relateren aan één record in de tabel Klanten.
Selecteer Gerelat. records in deze tabel verwijderen bij verwijderen van rec. in andere tabel voor de tabel 'Contactpersonen'. Er is geen reden om oude telefoonnummers te behouden als de overeenkomstige record van de contactpersonen is verwijderd.
6. Voeg een portaal aan de tabel 'Contactpersonen' in de lay-out 'Klant' toe en voeg deze gerelateerde velden aan het portaal toe. Telefoonnummer, E-mailadres.
Wanneer u in een lege portaalrij in de tabel Klanten een telefoonnummer of een e-mailadres invoert, maakt FileMaker Pro in de tabel Contactgegevens een gerelateerde record voor dat telefoonnummer of e-mailadres.
Verwante onderwerpen 
Werken met de relatiegrafiek
Relaties maken en wijzigen
Portalen maken om gerelateerde records weer te geven