Definiera och uppdatera länkar

En länk kopierar data från en annan tabell till ett fält i den aktuella tabellen. Kopierade data blir sedan en del av den aktuella tabellen (och finns även kvar i tabellen som de kopierades från). Information som kopieras till den aktuella tabellen ändras inte automatiskt när informationen i den andra tabellen ändras.

Använd en länk för att t.ex. kopiera priset på en artikel vid tidpunkten för försäljningen i en fakturatabell. Även om priset i den relaterade tabellen ändras kommer priset i fakturatabellen att vara oförändrat.

Skillnaden mellan data som visas dynamiskt och kopieras statiskt

Använd en relation att upprätta en anslutning mellan tabeller för en länk. Definiera sedan en länk som kopierar data från ett fält i den relaterade tabellen till ett fält i den aktuella tabellen.

När du skriver eller ändrar ett värde i det matchande fältet i den aktuella tabellen använder FileMaker Pro relationen för att hämta den första posten i den relaterade tabellen vars matchande fält innehåller ett värde som uppfyller relationsvillkoren. Därefter kopieras värdet från länkens källfält till länkens målfält, där värdet lagras.

Du kan redigera, byta ut eller ta bort värdet i länkens målfält precis som alla andra värden i den aktuella tabellen.

Om du ändrar data i det matchande fältet i den relaterade tabellen eller i en länks källfält, uppdaterar FileMaker Pro inte automatiskt informationen i länkens målfält. Om du vill uppdatera data måste du utföra länkningen igen, antingen genom att välja Poster > Uppdatera fältinnehåll i bearbetningsläget eller genom att ändra ett matchande fält i relationen som används av länken.

Viktigt  När en länk bygger på en relation med flera villkor aktiveras länken varje gång ett värde anges i något av fälten som ingår i relationen. Länkningen utförs varje gång ett värde anges i ett av de nödvändiga fälten.

Så här definierar du en länk:

  1. Välj Arkiv > Hantera > Databas och klicka på fliken Relationer.
  2. Definiera relationen för länken mellan det matchande fältet i den aktuella tabellen och det matchande fältet i den relaterade tabellen.

    Mer information finns i Skapa och ändra relationer.

    Se till att länkens källfält och länkens målfält är av samma fälttyp.

  3. Klicka på fliken Fält.
  4. Välj en tabell i listan Tabell.
  5. Välj ett fält i listan över befintliga fält eller definiera ett nytt fält och klicka sedan på Alternativ.
  6. Klicka på fliken Automatiska data och markera sedan Länkade data.
  7. Välj tabellen som ska användas som startpunkt i relationsdiagrammet vid Börja med tabell. Välj den relaterade tabellen som länkdata ska hämtas från vid Länkdata från relaterad tabell.
  8. Markera fältet som länkdatavärdet ska kopieras från.
  9. Välj tillval för länken.

Så här uppdaterar du länkdata:

  1. Hitta posterna du tänker uppdatera i den aktuella tabellen.
  2. Välj det matchande fältet i bearbetningsläge i den aktuella tabellen och välj sedan Poster > Uppdatera fältinnehåll.

    Kommandot Uppdatera fältinnehåll sparar inte den aktiva posten. Mer information finns i Verkställa information i poster.

Viktigt  Om du väljer Uppdatera fältinnehåll uppdateras alla fält som har länkats i alla poster i den aktuella gruppen hittade poster. Du kan inte ångra en uppdatering av länkdata.

Kommentarer 

  • När samma värde finns i det matchande fältet i mer än en post i den relaterade tabellen händer följande:
    • Värdet från den först skapade relaterade posten kopieras om relationen inte har någon sorteringsordning.
    • Värdet från den första posten i sorteringsordningen kopieras om relationen har en sorteringsordning.
  • Relationen kan sortera de relaterade posterna så att den första relaterade posten (posten som länken kopierar) är en viss post. Om du t.ex. vill visa det senaste kontrolldatumet för en utrustning sorterar du posterna i fallande ordning efter kontrolldatum. Mer information finns i Skapa och ändra relationer.
  • Du kan automatiskt uppdatera länkvärden genom att definiera en knapp eller en scripttrigger som ska utföra Scriptsteget Uppdatera fältinnehåll.