2010

Maj

21

Av

I FileMaker är det inga problem att skapa ett löpnummer i en tabell. Det är en enkel inställning för ett fält, som t.ex. automatiskt får löpnumrering från 1 och uppåt för varje ny post. Det är dessutom bra att alltid ha för vana att ha ett löpnummerfält i varje tabell, förr eller senare kommer det till nytta. 

Ibland vill man skapa flera löpnummerserier i en och samma tabell. Det kan t.ex. vara så att man har poster med olika kategorier och man vill ha en egen löpnummerserie för varje kategori. Låt oss säga att poster med värdet “A” i fältetKategori ska ha en löpnummerserie som börjar med 1, poster med värdet “B” i fältet Kategori en annan löpnummerserie som börjar med 1 osv.

Det har i tidigare versioner av FileMaker (ända sedan FileMaker II i alla fall) gått att göra med länkdata och beräkningsfält, men i FileMaker 10 eller senare finns ett mycket, mycket enklare sätt med hjälp av manus-triggers.

I det här exemplet finns en tabell med 3 fält, id som är ett löpnummerfält som FileMaker själv fyller på, kategori som jag ska använda för att kategorisera posterna och som avgör vilken löpnummerserie som de ska få samt löpnummer som är löpnumret inom varje kategori.

Det finns också en relation till samma tabell, se bild nedan.

FleraLop

Jag har kallat tabellen för FleraLöpnummer och relationen är till samma tabell, FleraLöpnummer 2. Fältet kategori ska vara lika, fältet id ska vara större i huvudtabellen FleraLöpnummer än i relationen. Observera också att posterna i relationen är sorterade, i det här fallet i fallande ordning efter fältet id. Den post med högst id-nummer och med samma kategori som den du skriver in finns på så sätt först i relationen.

För en manus-trigger behövs ett manus och det innehåller ett enda manussteg som hämtar löpnumret med samma kategori och högst id-nummer samt adderar 1:

Tilldela fält [FleraLöpnummer::löpnummer; FleraLöpnummer 2::löpnummer + 1]

Gå till layoutläget och se till att manuset körs när du lämnar fältet kategori (PåObjektAvsluta). Högerklicka på fältet och välj Ange manusutlösare för att komma till dialogrutan. Sen är det klart att prova.

Så här blir resultatet när det finns 3 kategorier A, B och C som alla har ett löpnummer som börjar med 1.

Lopnr

Du kan ladda ner exempeldatabasen här.

FleraLöpnummer.zip (7,04 kb)

Skriv en kommentar

  • (will not be published)
  • 9 − = seven

Läs också: