Laboration 3

Börja med att ladda ner en färdig exempeldatabas som består ungefär av det vi gjorde under förra laborationen. Öppna i FileMaker.

Fixa portalen

Gå till medlemslayouten i bearbetningsläget och gå till första posten (Olle). Du ser i portalrutan att Olle är med i sektionerna A, B, C.

Låt oss prova att ta bort Olle från sektion A, men direkt från portalen.

Gå till layoutläget. Dubbelklicka på den gråa ytan i portalen, alternativt bara markera portalen och välj Utforma -> Portalkonfiguration i menyn.

Bocka för “Tillåt radering av poster i portalen” och OK. Gå tillbaka till bearbetningsläget.

Klicka i fältet som har sektionskod A (så att du får upp en blinkande markör i rutan.)

I FileMaker-verktygsfältet, klicka på “Radera post”, och välj “Relaterad post” i dialogrutan som dyker upp, och sen “Radera”.

Gå nu till layouten Sektion, tabellvy (fortfarande i läget bearbeta). Sektion A är borta! Varför då?

Problemet var att portalen ändrade i tabellen Sektion snarare än Deltar. Gör så här: lägg in sektion A (Bowling) igen i Sektion.

Gå sedan till layoutläget och välj Medlem. Dubbelklicka på den gråa ytan i portalen. Vid “Visa poster enligt relationen:“, ändra från Sektion till Deltar.

Gå tillbaka till bearbetningsläget för medlem Olle. Markera rutan A. Klicka på “Radera post” i verktygsfältet igen, välj “Relaterad post”, “Radera”.

Växla sedan tillbaka till Sektion. Sektion A är kvar! Och i layout Deltar kan du verifiera att den här gången togs deltar-sambandet mellan Olle (medlesnummer 1) och A bort, snarare än själva sektionen.


Knapp för att ta bort

Kom ihåg: i grupparbetet får ni inte använda FileMakers egen verktygsrad/meny för att göra saker. Vill vi kunna ta bort saker genom portalen behöver vi alltså en knapp för det.

Gå till layoutläget för layout Medlem. Under portalen, gör en knapp med funktionen “Radera portalrad” (under Poster) och döp den till “Ta bort från sektion”. Prova knappen i bearbetningsläget.


Skapa en startsida

Dags att strukturera upp det lite. Gå till layoutläge och skapa en ny layout – Layouter -> Ny layout/rapport. Ge den namnet “Startsida”, klicka på Dator och Formulär. “Visa poster från:” spelar ingen roll.

Gör en textruta i sidhuvudet (den mörka ytan) och skriv “Startsida”.

Gör fem knappar med tillhörande funktion:

  • “Visa medlemmar” - funktionen “Gör ingenting” (längst upp i listan)
  • “Sök medlem” - utför manuset “Medlem - gå till sökformulär”
  • “Lägg till medlem” - gör ingenting
  • Visa sektioner - funktionen gå till layout Sektion
  • Lägg till sektion - gör ingenting

Vi tar dem en i taget.

Visa medlemmar

När vi klickar på “Visa medlemmar” vill vi komma till listvyn för layouten Medlem. Vi behöver ett manus!

Skapa ett manus med namn “Visa medlemmar” och ge manuset stegen “Visa alla” (under Sökresultat), “Gå till layout” Medlem och “Visa som” Lista (ligger under “Fönster”). Spara manuset.

Gå tillbaka till startsidan (i layoutläge) och markera “Visa medlemmar”. Gå till Utforma -> Knappkonfiguration och välj att knappen ska utföra manuset “Visa medlemmar”. Gå till bearbetningsläget och kolla att det funkar.


Städa upp medlemslayouten

I layoutläget, ta bort knapparna uppe i högra hörnet – Föregående/nästa medlem, Sök medlemmar, Sektion. Flytta portalen så att den ligger jämsides med medlemsnummer/namn/telefonnummer. Flytta “Ta bort från sektion” och “Lägg till i sektion” så att de ligger precis under portalen. Ta bort knappen “Visa sektioner.”

Gör huvuddelen mindre genom att dra sidfotens övre streck uppåt.

I sidhuvudet, lägg till rubriken “Medlemmar”.

Lägg också till en knapp som leder tillbaka till layouten Startsida.

Förbättra sök medlem

Layoutläge, layout Medlemssök - träfflista. Vi vill ha en knapp som för varje post i träfflistan leder layouten Medlem. Börja med ett manus, “Visa medlemssida”, som får funktionerna “Gå till layout” (Medlem), “Visa som [Visa en post]“, och “Visa alla”.

I träfflistans huvuddel, till höger om rutan för telefonnummer, gör en ny knapp – “Visa” – som utför manuset vi just skapade.

I sidhuvudet, lägg till knappen “Ny sökning”, som utför manuset “Medlem - gå till sökformulär”. Gör också en knapp som går tillbaka till startsidan.

Gör också en rubrik längst till vänster i sidhuvudet – “Sökresultat”.

Testa i bearbetningsläget!

Lägg till navigering

I layouten Medlem, lägg till en knapp i sidhuvudet (det mörka) som går tillbaka till startsidan.


Knappen för att lägga till medlemmar

Gå till layoutläge, layout Startsida. Skapa nytt manus för att lägga till en ny medlem. Döp det till “Skapa ny medlem” och ge det funktionerna Gå till layout medlem, Visa som Visa en post, och Ny post/sökpost. Spara. Gör så att knappen “Lägg till medlem” utför detta manus. Testa.

Som synes funkar det, men vi behöver en knapp för att spara! Gör en ny knapp på layouten Medlem, låt den ha funktionen “Verkställ post/sökpost” och döp till “Spara”.

Lägg till en knapp i sidhuvudet för att gå tillbaka till startsidan.

Lägg till sektion

Fixa så att “Lägg till sektion” fungerar på ungefär samma vis!


Lägg till medlemskategori

Säg att vi vill kunna hantera två olika typer av medlemmar - ungdomar och vuxna. Då vill vi ha ett nytt fält (kolumn) i tabellen Medlem som kan ha värdet Ungdom eller Vuxen. Bra läge att använda en värdelista! Så låt oss skapa den först:

Arkiv -> Hantera -> Värdelistor. Skapa ny lista som får heta Medlemskategorier. Denna lista ska då inte hämtas från någon tabell i databasen, utan ska helt enkelt bara vara ett par fördefinierade värden. Så under “Använd värden i listan”, skriv Ungdom och Vuxen på varsin rad. Tryck OK, OK.

Dags att skapa fältet. Gå till Arkiv -> Hantera -> Databas. I fliken Fält, välj tabell Medlem och lägg till ett nytt fält, Kategori, av typ text. Skapa och dubbelklicka sedan på detta nya fält. Tryck OK.

I medlemslayouten, layoutläge, använd Fältväljaren och dra in det här nya Kategori-fältet så att det ligger under Telefonnummer i layouten. Klicka sedan på Kategori-fältet i layouten och, i Granskaren, ändra från Redigeringsruta till Meny/Snabbmeny. Se också till att den använder värden från värdelistan vi nyss skapade (Medlemskategorier).

Ändra de befintliga medlemmarna så att de får antingen Ungdom eller Vuxen som medlemskategori.


Beräknade värden

Lägg till fältet “Medlemskap upphör” av typ Datum i medlemstabellen. Låt det vara ett beräknat värde med värdet:

Get ( AktuelltDatum ) + 365

(FileMaker kommer att automatiskt ersätta AktuelltDatum med det faktiska datum för den tidpunkt då fältet fylls i.)

Gå till medlemslayouten och lägg in fältet i layouten. Skapa en ny post och se vad som händer!

För att göra det lite mer intressant: ändra så att det beräknade värdet i stället är:

Get ( AktuelltDatum ) + If ( Medlem::Kategori = "Vuxen" ; 180 ; 365 )

Vad händer då? Prova att lägga in en medlem av typ Vuxen och en av typ Ungdom.

(Observera att det här beräknade värdet vi ställt in bara beräknas och sätts första gången du väljer vuxen/ungdom i en post. Så har du ställt in det en gång i en viss post så kommer det inte att ändras automatiskt om du byter medlemskategori för den posten. Däremot går det ju att ändra datumet manuellt.)

Vi kan göra det enklare att välja datum. Gå till layoutläget för layouten Medlem och markera “Medlemskap upphör”-redigeringsrutan. I Granskaren, fliken Data, ändra från Redigeringsruta till “Nedrullningsbar kalender”. Gå till bearbetningsläget och tryck på datumet.


Utseende

Prova att använda alla de olika funktionerna för design och formgivning. Välj t.ex. ett fält i layoutläget och titta i fliken “Utseende” i Granskaren och prova att ändra typsnitt, skugga, bakgrundsfärg osv.

Testa att högerklicka på bakgrunden i huvuddelen och välj “Ändra tema” och prova olika varianter. Och så vidare!

När man lägger till ett nytt objekt, t.ex. en knapp, så kommer FileMaker att ge objektet en stil baserat på vad som är standardstilen i det valda temat. Men det går alltså att finjustera i fliken “Utseende” i Granskaren. Men hur gör man om man vill använda samma egna stil för flera knappar? Att manuellt ställa in de olika stilinställingarna för varje knapp är ju trist. Det finns några olika möjligheter:

Ändra standardutseendet

Välj en knapp och ändra dess utseende på godtyckligt vis. I Granskaren, under Utseende, bör du se att “Stil” är “Förvalt*“. Stjärnan och den röda pilen bredvid indikerar att du gjort en egen anpassning av stilen. Klicka på röda pilen och välj “Spara ändringar i aktuellt format”. Nu kommer alla knappar att få den stilen – du har ändrat “standard”-stilen, så att säga.

Gör olika stilar för olika saker

Men du kanske vill ha olika stilar (mallar) för olika knappar? Välj en annan knapp och ändra dess utseende. Klicka på den röda pilen bredvid “Stil” och välj i stället “Spara som nytt format”. Ge den namnet “Min första knappstil”.

Klicka nu på en annan knapp. I Granskaren, under fliken Format, välj “Min första knappstil”. Voilà!

Stilar kan appliceras på alla möjliga saker – inte bara knappar. Prova att göra stilar för t.ex. textredigeringsfält och liknande!

Lägg in en bild

Gå till startsidan, layoutläge. En bild kanske skulle piffa upp det hela? Ladda ner valfri bild. Klicka på Sätt in -> Bild. Den kanske är för stor: ändra storleken genom att hålla in Shift-tangenten och dra i något av hörnen. (Shift gör att proportionerna bibehålls.)

Ändra utseende för sidhuvud, huvuddel, sidfot

För att ändra sidhuvudets utseende, gå till valfri layout i layoutläge och klicka på “Sidhuvud” allra längst till vänster. I Granskaren kan du sen ändra t.ex. bakgrundsfärg (eller göra så att en bakgrundsbild används i stället). Samma sak med huvuddel och sidfot - klicka i vänsterkanten och ändra i Granskaren.


Fält för snabbsökning

Om du vill göra ett fält för snabbsökning – dvs ett fält som söker i alla fält samtidigt i en viss tabelll – kan du göra så här:

  • Låt säga att vi vill snabbsöka i tabellen Medlem. Gå till Arkiv -> Hantera -> Databas, fliken Fält, välj tabellen Medlem.
  • Skapa ett nytt fält: Snabbsök.
  • Dubbelklicka på Snabbsök och, i fliken Kontroll, bocka för “Använd global lagring”. Tryck OK, OK.
  • I layoutläge, välj den layout där du vill placera snabbsökfältet. Från fältväljaren, dra fältet Snabbsök till någonstans på layouten.