Werken met gerelateerde gegevens in portalen
Wanneer u gerelateerde gegevens in een
portaal weergeeft, worden de waarden uit alle
gerelateerde records weergegeven, in overeenstemming met de
toegangsprivileges van de gebruiker. Wanneer een gerelateerd veld zich daarentegen buiten een portaal bevindt, wordt alleen de waarde van de eerste gerelateerde record weergegeven.
Portaalgegevens sorteren
Gebruik het dialoogvenster 'Relatie bewerken' om gerelateerde records in een portaal te sorteren. Raadpleeg
Relaties maken en wijzigen. Wanneer de optie
Records sorteren is ingeschakeld en u de gegevens in een gerelateerd veld in een portaal wijzigt, worden de portaalrecords opnieuw gesorteerd telkens als de gerelateerde records opnieuw worden geëvalueerd. De records worden bijvoorbeeld opnieuw gesorteerd wanneer u in de modus Bladeren naar een andere record gaat en vervolgens naar deze record terugkeert, of wanneer u de waarde in het vergelijkingsveld wijzigt. (Gebruik de
Portaal vernieuwen scriptstap om beter te controleren wanneer de sorteervolgorde wordt vernieuwd.)
De opgegeven sorteervolgorde in het dialoogvenster 'Portaalinstelling' heeft voorrang op de opgegeven sorteervolgorde in het dialoogvenster 'Relatie bewerken'. Als u geen sorteervolgorde voor het portaal of de relatie opgeeft, worden gerelateerde records in hun aanmaakvolgorde weergegeven in het portaal. Raadpleeg
Portalen maken om gerelateerde records weer te geven.
Records in portalen filteren
U kunt records filteren om verschillende reeksen records in een portaal weer te geven.
2. Selecteer Portaalrecords filteren.
3. Definieer een berekening die resulteert in Waar voor de portaalrecords die moeten worden weergegeven.
U bevindt zich bijvoorbeeld in de
lay-out 'Facturen' in een portaal met productrecords uit de tabel Regels. Als u alleen de producten met hoeveelheden groter dan of gelijk aan één wilt weergeven, gebruikt u de formule
If (Regels::Hoeveelheid < 1; 0; 1).
Belangrijk De resultaten van
resumévelden, berekeningen en zoekopdrachten zijn gebaseerd op de volledige reeks van gerelateerde records, niet alleen de records in een portaal die zijn gefilterd. Als een portaal bijvoorbeeld een gefilterde deelverzameling van records weergeeft en er buiten het portaal een resuméveld
Totaal van is dat deze records resumeert, geeft het resuméveld het totaal van
alle gerelateerde records, niet alleen de weergegeven records. Om gegevens uit de gefilterde portaalrecords te gebruiken voor een resuméveld, berekening of zoekopdracht, maakt u een nieuwe relatie met dezelfde criteria als voor de gefilterde portaalrecords en gebruikt u vervolgens gerelateerde velden uit die relatie voor het resuméveld, de berekening of de zoekopdracht.
Gegevens in portalen resumeren
Gegevens van een gerelateerd veld dat in een portaal wordt weergegeven, kunt u resumeren. U kunt bijvoorbeeld het totaal van alle gerelateerde records verkrijgen.
Hiertoe plaatst u een resuméveld in de tabel vanwaar de gerelateerde records worden weergegeven (de tabel weergegeven in het dialoogvenster 'Portaalinstelling'). Plaats vervolgens het resuméveld in de lay-out met het portaal.
Veronderstel dat een lay-out een portaal gebruikt om alle verkoopcijfers per verkoper weer te geven en dat u een resuméveld wilt toevoegen dat het totale bedrag van de verkoop weergeeft.
Zo resumeert u gegevens in een portaal aan de hand van dit eenvoudige voorbeeld:
1. Maak twee tabellen met de volgende velden:
Tabelnaam | Veldnaam | Veldtype | Opmerking |
Verkoop | Transactie-ID | Tekst | |
| Verkoper-ID | Tekst | |
| Bedrag | Getal | |
| Totale verkoop | Overzicht | |
Verkoper | Verkoper-ID | Tekst | Primaire sleutel |
| Naam | Tekst | |
2. Maak in de
relatiegrafiek een relatie tussen de twee 'Verkoper-ID'-velden.
3. Voeg in de
modus Lay-out de vier velden van de tabel 'Verkoop' toe aan de lay-out 'Verkoop' (als ze niet automatisch zijn toegevoegd). Voeg de twee velden van de tabel 'Verkoper' aan de lay-out 'Verkoper' toe.
4. Maak in de lay-out 'Verkoper' een portaal dat gerelateerde records uit de tabel 'Verkoop' weergeeft. Voeg de volgende gerelateerde velden uit de tabel 'Verkoop' aan het portaal toe: Transactie-ID, Bedrag, Totale verkoop
U kunt het resuméveld (Verkoop::Totale verkoop) ook op een willekeurige plaats in de lay-out 'Verkoper' zetten. Raadpleeg
Velden in lay-outs plaatsen en verwijderen.
5. Schakel over naar de
modus Bladeren en voeg de volgende records aan de tabel 'Verkoop' toe:
Recordnummer | Veld | Gegevens |
1 | Transactie-ID | T1 |
| Verkoper-ID | S1 |
| Bedrag | 246,00 |
2 | Transactie-ID | T2 |
| Verkoper-ID | S2 |
| Bedrag | 52,75 |
3 | Transactie-ID | T3 |
| Verkoper-ID | S1 |
| Bedrag | 10,50 |
4 | Transactie-ID | T4 |
| Verkoper-ID | S2 |
| Bedrag | 150,00 |
5 | Transactie-ID | T5 |
| Verkoper-ID | S1 |
| Bedrag | 17,80 |
FileMaker Pro vult de waarde van het veld 'Totale verkoop' in.
6. Schakel over naar de lay-out 'Verkoper' en voeg de volgende gegevens toe:
Recordnummer | Veld | Gegevens |
1 | Verkoper-ID | S1 |
| Naam | André Cuyper |
2 | Verkoper-ID | S2 |
| Naam | Sofie Tang |
FileMaker Pro voert de gerelateerde waarden uit de tabel 'Verkoop' in de rijen van het portaal in en berekent het totaal van alle verkoop voor die verkoper in het resuméveld 'Totale verkoop'.
Opmerkingen
•U kunt gegevens uit een enkelvoudige relatie in meerdere portalen op dezelfde pagina weergeven en voor elke portaal een andere sorteervolgorde gebruiken.
•Filtering van records is uitsluitend voor weergavedoeleinden, niet voor beveiligingsdoeleinden.
•Een filterberekening voor het portaal zou hetzelfde resultaat als een berekeningveld in de gerelateerde tabel geven.
•Hoewel velden in portaalrecords worden bijgewerkt naarmate de gegevens worden gewijzigd, wordt een portaalfilter pas geëvalueerd wanneer de record wordt geladen. Gebruik de
Portaal vernieuwen scriptstap om een portaalfilter bij te werken nadat de record is geladen.
•Voor een complexer resumé van uw gegevens gebruikt u een berekeningveld om een formule te definiëren. Raadpleeg
Berekeningvelden definiëren.
Verwante onderwerpen