Arbeta med relaterade tabeller > Arbeta med relaterade data i portaler
 
Arbeta med relaterade data i portaler
När du visar relaterade data i en portal visas värden från alla relaterade poster, enligt användarens behörighet. När det relaterade fältet finns utanför en portal visas däremot värdet från den första relaterade posten.
Sortera portaldata
Använd dialogrutan Ändra relation om du vill sortera relaterade poster i en portal. Mer information finns i Skapa och ändra relationer. När Sortera poster är markerat och data i ett relaterat fält i en portal ändras kommer portalens poster att sorteras om varje gång de relaterade posterna utvärderas på nytt. Om du till exempel växlar till en annan post och därefter öppnar samma post igen eller ändrar värdet i det matchande fältet sorteras posterna på nytt. (Använd scriptsteget Uppdatera portal om du vill få bättre kontroll över hur sorteringsordningen uppdateras.)
Sorteringsordningen som anges i dialogrutan Portalkonfiguration får företräde framför sorteringsordningen som anges i dialogrutan Ändra relation. Om du inte anger någon sorteringsordning varken för portalen eller relationen visas relaterade poster i portalen i ursprunglig ordning. Mer information finns i Skapa portaler för att visa relaterade poster.
Filtrera poster i portaler
Du kan filtrera poster i portaler för att visa olika uppsättningar poster i en portal.
1. Dubbelklicka på portalen i layoutläget.
2. Välj Filtrera portalposter.
3. Definiera en beräkning utvärderas till Sant för portalposterna som ska visas.
Till exempel kan du använda layouten Fakturor i en portal som visar produktposter från tabellen Radposter. Om du bara vill visa de produkter vars kvantitet är större än eller lika med ett använder du formeln If (Radposter::Kvantitet < 1; 0; 1).
Viktigt!  Resultaten av statistikfält, beräkningar och sökfrågor baseras på den fullständiga uppsättningen relaterade poster, inte bara filtrerade poster i en portal. Om en portal exempelvis visar en filtrerad delmängd poster och det finns ett Summa-statistikfält utanför portalen som summerar de här posterna, visar statistikfältet summan av alla relaterade poster, inte bara de visade posterna. Om du vill använda data från de filtrerade portalposterna för ett statistikfält, en beräkning eller en sökfråga skapar du en ny relation med samma villkor som för de filtrerade portalposterna. Sedan använder du relaterade fält från den relationen för statistikfältet, beräkningen eller sökfrågan.
Summera data i portaler
Du kan summera data som finns i ett relaterat fält som visas i en portal. Du kan till exempel få totalsumman för alla relaterade poster.
För att göra det placerar du ett statistikfält i tabellen som relaterade poster visas från (tabellen som visas i dialogrutan Portalkonfiguration). Placera sedan statistikfältet i den layout som innehåller portalen.
Anta att en layout använder en portal för att visa all försäljning per säljare, och du vill använda ett statistikfält som visar den totala försäljningssumman.
Så här sammanfattar du data i en portal för det här enkla exemplet:
1. Skapa två tabeller med följande fält:
 
Tabellnamn
Fältnamn
Fälttyp
Kommentar
Försäljning
TransaktionsID
Text
 
SäljarID
Text
 
Summa
Numeriskt
 
 
Total försäljning
Statistik
Beräknar totalsumman av fältet Summa – se Definiera statistikfält
Säljare
SäljarID
Text
Primärnyckel
 
Namn
Text
 
2. Skapa en relation mellan de två fälten SäljarID i relationsdiagrammet.
3. Lägg till de fyra fälten i tabellen Försäljning i layouten Försäljning i layoutläget (om de inte har lagts till automatiskt). Lägg till de två fälten i tabellen Säljare bordet i layouten Säljare.
4. Skapa en portal på layouten Säljare som visar relaterade poster från tabellen Försäljning. Ta med följande relaterade fält från tabellen Försäljning i portalen: TransaktionsID, Summa, Total försäljning.
Du kan även placera statistikfältet (Försäljning::Total försäljning) var som helst i layouten Säljare. Mer information finns i Placera och radera fält i en layout.
5. Växla till bearbetningsläget och lägg till följande poster i tabellen Försäljning:
 
Postnummer
Fält
Data
1
TransaktionsID
T1
 
SäljarID
S1
 
Summa
246,00
2
TransaktionsID
T2
 
SäljarID
S2
 
Summa
52,75
3
TransaktionsID
T3
 
SäljarID
S1
 
Summa
10,50
4
TransaktionsID
T4
 
SäljarID
S2
 
Summa
150,00
5
TransaktionsID
T5
 
SäljarID
S1
 
Summa
17,80
FileMaker Pro fyller i värdet i fältet Total försäljning.
6. Växla till layouten Säljare och lägg till följande data:
 
Postnummer
Fält
Data
1
SäljarID
S1
 
Namn
Anders Carlsson
2
SäljarID
S2
 
Namn
Stefan Lang
FileMaker Pro anger de relaterade värdena från tabellen Försäljning i portalens rader, och beräknar totalsumman av all försäljning för den säljaren i statistikfältet Total försäljning.
Kommentar 
Du kan visa data från en enda relation i flera portaler på samma sida och använda olika sorteringsordningar för varje portal.
Posterna filtreras enbart i visningssyfte, inte av säkerhetsskäl.
Resultatet av en portalfilterberäkning skulle vara detsamma som resultatet i ett beräkningsfält i den relaterade tabellen.
Även om fält i portalposter uppdateras när data ändras utvärderas ett portalfilter först vid inläsning av posten. Använd scriptsteget Uppdatera portal om du vill uppdatera portalfiltreringen när posten har lästs in.
Du kan använda ett beräkningsfält för att definiera en formel om du vill ha en mer komplex statistik över dina data. Mer information finns i Definiera beräkningsfält.
Relaterade avsnitt 
Skapa portaler för att visa relaterade poster