Skapa grupperat adressregister i Filemaker

Tråden skapades och har fått 8 svar. Det senaste inlägget skrevs .
1

Jag tänkte jag skulle bygga nånting som är väldigt likt OS X:s adressbok, fast i Filemaker. Anledningen till detta är dels att det är kul men framförallt för att datorn det ska ligga på är windows och jag har inte hittat något motsvarande där.

Så, vad jag klurar på nu är hur jag ska utforma databasen bäst för att fungera med grupper. Jag tänker mig att ha en grupp t.ex. för julkortsutskick, en för grannar, en för släkt, en för vänner, en för jobbkontakter o.s.v. och kontakterna ska alltså kunna tillhöra mer än en grupp.

Är det bästa sättet att göra det på att göra dels en databas med namn och adressuppgifter som jag sedan kopplar till en databas där de kopplas till respektive grupp? Gruppdatabasen består i så fall av ett fält för namn (eller något slags indexnummer kanske) och sedan ett fält för varje grupp där det står 0 om man inte är med i gruppen och 1 om man är med i gruppen. Det känns som en rätt klumpig lösning men det kanske är bästa sättet?

  • Medlem
  • Stockholm
  • 2011-01-12 20:14

I princip kan man väl sätta upp databasen utgående från tre grundtabeller: individ, grupp samt en kopplingstabell "individ_grupp"
Individtabellen bör innehålla fälten ID, Förnamn, Efternamn, etc. Grupptabellen bör innehålla fälten ID, Gruppnamn, etc. Samt kopplingstabellen bör innehålla fälten individID samt gruppid. Sedan är det bara att koppla ihop tabellerna med varandra enligt individid mot individ_grupp samt gruppid också mot indidvid_grupp.

(Att skapa fält som är 1 eller 0 om man är med i resp. grupp tycker jag som en konstig lösning.)

Gör precis som hekr säger

Bara så att du inte går över ån efter vatten bör du i alla fall veta att det finns en motsvarighet till Adressboken även i Windows, för Windows XP heter den just "Address Book"

Windows Address Book - Wikipedia, the free encyclopedia

I Windows Vista / 7 heter den "Contacts"

Tack för alla svar!

Ursprungligen av hekr:

I princip kan man väl sätta upp databasen utgående från tre grundtabeller: individ, grupp samt en kopplingstabell "individ_grupp"
Individtabellen bör innehålla fälten ID, Förnamn, Efternamn, etc. Grupptabellen bör innehålla fälten ID, Gruppnamn, etc. Samt kopplingstabellen bör innehålla fälten individID samt gruppid. Sedan är det bara att koppla ihop tabellerna med varandra enligt individid mot individ_grupp samt gruppid också mot indidvid_grupp.

(Att skapa fält som är 1 eller 0 om man är med i resp. grupp tycker jag som en konstig lösning.)

Jag ska se om jag förstått detta rätt. Det här med databaser är lite en ny värld för mig men Filemaker är ju nästan löjligt lättanvänt så det ska nog gå bra ändå. individ_grupp-tabellen innehåller alltså en post för varje koppling? Så om en person med personID 43 ska vara med både i gruppen kollegor (med ID 7) och i gruppen julkortskontakter (med ID 4) så finns det en post i individ_grupp-tabellen med personID 43, gruppID 7 och en post med personID 43, gruppID 4. Rätt så?

Ursprungligen av Richard Rönnbäck:

Gör precis som hekr säger

Bara så att du inte går över ån efter vatten bör du i alla fall veta att det finns en motsvarighet till Adressboken även i Windows, för Windows XP heter den just "Address Book"

Windows Address Book - Wikipedia, the free encyclopedia

I Windows Vista / 7 heter den "Contacts"

Jag har googlat lite på den och det verkar iaf i XP vara lite meckigt med att skriva ut adressetiketter. Sen är det oklart hur grupperna funkar också. Men jag ska kolla in den en gång till innan jag börjar bygga. Tack!

Jag skulle hoppa över kopplingstabellen och bara ha Individ och Grupp.
Om du har ett GruppID för varje grupp och ett fält för "gruppkoppling" i Individtabellen kan du mata in flera GruppID (separerade av radmatning) på varje post i Individtabellen.
Detta gör du med fördel med ett script.

Så kan man göra, men det blir då väsentligt svårare när man vill börja ändra vilka grupper en individ tillhör, för att lägga till en rad via script är rätt enkelt, men att ta bort inte fullt så enkelt. Dessutom blir det mycket svårare att skapa perspektiv som utgår från gruppen.

Min personliga uppfattning är att det är en metod som medför fler nackdelar än fördelar.

Vill man av någon anledning ha få tabeller går det t.o.m. att helt utesluta grupptabellen, och bara ha en självrelation, men även det är i längden ett mindre flexibelt sätt att göra det, enligt mitt sätt att se det.

Kontrollfrågor för att se så jag fattat detta rätt: Om jag då vill göra ett utdrag på vilka som finns i Grupp med ID 4 så gör jag utdraget i individ_grupp-tabellen och sen kollar upp vilka personer som personID i tabellen korrelerar mot? Och om jag vill se vilka grupper en person finns med i så gör jag motsvarande utdrag i individ_grupp och kollar sen upp vilka grupper dessa gruppID korrelerar mot?

Precis rätt (eller iaf om du gör det enligt den modellen med en kopplingstabell)

Ungefär så, men det du ska kolla upp är "portaler", som direkt på varje post i en layout baserad på individtabellen kan visa vilka "relaterade" poster som finns enligt en viss relation, i det här fallet den som skapas mha av din kopplingstabell. Då kan du på varje individ se grupptillhörighet, och från gruppen se vilka individer som ingår.

Sedan finns också manussteg "gå till relaterade poster" som kan vara mkt användbart.

1
Bevaka tråden