2016

Nov

04

Av Rolf

Veckoschema_schemaJag använder alltid mitt favoritprogram FileMaker Pro för alla möjliga ändamål. Häromdagen fattades det lappar med veckoschema som vi använder för att boka tvättid i vår lilla bostadsrättsförenings tvättstuga och den gamla mallen hade försvunnit. Tio minuter med FileMaker blev räddningen och vi kan tvätta igen!

Den blankett jag ska göra är ganska enkel, några linjer, klockslag och datum. Datumen ska automatiskt beräknas så att varje ny post visar en ny vecka. Så här kommer det att se ut:

Veckoschema_schema

Ladda ner veckoschema 13 veckor framåt som PDF och skriv ut: Veckoschema.pdf

Jag skapar en ny databas med namnet Veckoschema och ändrar temat på layouten som skapas. Högerklicka på layouten i layoutläget och välj Ändra tema: Eftersom det är en utskrift väljer jag första bästa tema lämpat för utskrift vilket är ”Upplyst utskrift”. Temat innehåller inga bakgrundsfärger.

För att se hur stor yta jag kan använda för veckoschemat väljer jag att visa Sidbrytningar i menyn Visa och liggande utskriftsformat med menyvalet Utskriftsformat i menyn Arkiv. FileMaker lägger alltid till lite marginaler för utskriften, jag har för vana att ta bort dem 🙂 Väljer därför kommandot Tillval för layout i menyn Layouter, går till fliken Skriva ut i dialogrutan som visas, kryssar i rutan Använd fasta marginaler och anger 0 i samtliga fält. Jag struntar i varningen som kommer när jag klickar OK.

Dra sedan ut layouten så att sidbrytningen nedtill inte syns. Till höger om sidbrytningsmarkeringen kan det finnas vit layoutyta, den kommer aldrig att skrivas ut, och kan vara bra att ha kvar.

Veckoschema_rektangel

Jag börjar med att rita en ram med rektangelverktyget som är så stor som jag vill att schemat ska bli. Jag använder alltid Hårfin linje i helt svart, men inställningen beror på vilken skrivare du har. Välj det som passar dig bäst! Du väljer genom att först välja Formateringslisten i menyn Visa, för att visa formateringslisten, och sedan i menyerna till höger på formateringslisten.

Veckoschema_matt

Nästa steg är lite matematik för att få linjerna med lika långt mellanrum. Jag visar Granskaren (välj Granskare i menyn Visa) och visar fliken med positionsmåtten. Jag arbetar nästan alltid med enheten pt (punkter), klicka på enheten bredvid någon av positionsmåtten för att byta enhet (där kan stå cm eller tum, klicka till det står pt). I mitt veckoschema ska det finnas 1 rad i huvudet med datum och sedan 4 rader, 1 kolumn längst till vänster med klockslag och sedan 7 kolumner, 1 för varje dag. För enkelhetens skull flyttar jag min rektangel högst upp till vänster, då blir det lättare att räkna eftersom måtten då börjar på 0.

Höjden på rektangeln gör jag till 510 punkter, den första horisontella linjen ritar jag 50 punkter från ovankanten. Jag tar fram kalkylatorn på datorn och räknar ut att för att få 4 rader ska det finnas 3 linjer med 115 punkters mellanrum. Jag kopierar den första linjen och placerar kopiorna på rätt ställen. FileMaker hjälper till att placera dem rakt under varandra.

Bredden på rektangeln blev 735 punkter, för att få jämna siffror gör jag första kolumnen till 49 punkter och resten med 98 punkters mellanrum. jag drar en lodrät linje som jag sedan kopierar. FileMaker hjälper till att placera linjerna. (Siffrorna kan säkert göras enklare och jämnare, det blev så när jag ritade rektangeln som sedan avgör måtten.)

I kolumnen till vänster skriver jag några klockslag med textverktyget och placerar dem på ”fri hand”.

Som rubrik för varje dag vill jag ha veckodag och datum, en vecka för varje post. Jag behöver två beräkningsfält, ett beräkningsfält som räknar fram datum för måndagen i veckan som ska visas och ett fält som räknar fram datum för alla veckans dagar. För det använder jag ett repeterat fält med 7 repetitioner.

Det första fältet kallar jag DatumMåndag och har följande formel:

GetAsDate ( "2016-10-31") + 7*(Get (Postnummer) - 1)

Jag börjar veckoschemat på 31 oktober 2016 (som är en måndag, det är viktigt) och för varje ny post lägger jag till 7 dagar. Jag använder funktionen Get (Postnummer) för att få reda på postens nummer i tabellen, multiplicerar med 7 för att få datum för nästa måndag. Fältet får ett datum på en måndag för varje post i databasen.

Det andra beräkningsfältet är ett repeterat fält, kallat DatumDagar, med formeln:

Extend(DatumMåndag) - 1 + Get ( BeräknatRepetitionsnummer )

Funktionen Extend behövs för att fältet DatumMåndag ska användas för alla repetitionerna och med funktionen Get ( BeräknatRepetitionsnummer ) blir det olika datum i alla repetitionerna. Eftersom jag minskar med 1 läggs det till 0, 1, 2 osv. till 6 till måndagsdatumet, dvs. jag får ett datum för veckans alla dagar från måndag till söndag. Tänk på att fältet ska repeteras 7 gånger, vilket anges längst ner till vänster i dialogrutan för beräkningsfält.

Veckoschema_ber1

Fältet DatumMåndag placerar jag i layoututrymmet till höger om den yta som skrivs ut så att jag ser att det blir rätt. Fältet ska aldrig skrivas ut.

Veckoschema_huvud

Jag vill ha både veckodag och datum i varje kolumn, på två olika rader. Enklast är att lägga in fältet DatumDagar två gånger ovanför varandra, det översta fältet utformar jag så att endast veckodagens namn visas och det andra utformar jag till att visa datumet.

Se till att samtliga 7 repetitioner visas horisontellt, det väljer du i Granskarens fjärde flik. Centrera innehållet i fältet med kommandot Justera Centrerad i menyn Utforma och gör det lika brett som kolumnerna med dagarna. Markera allt på layouten och flytta veckoschemat så det blir centrerat på sidan.

Sen är det bara att gå till bearbetningsläget och skapa så många poster som du vill ha veckoschema och skriva ut.

Ladda ner exempeldatabas: Veckoschema.fmp12

Ladda ner veckoschema 13 veckor framåt som PDF och skriv ut: Veckoschema.pdf

Kommentarer

2017-06-02 Eva Dogan

Hej!

Tack för fint schema! Ska läsa noga och testa!

Finns det ett sätt att få ett fält (datumfält) att omvandla och visa det som aktuell veckodag istället? Vet att frågan inte gäller inlägget men efter att ha surfat länge fann jag endast detta inlägg som nuddar i närheten.

Jag har gjort en logg för mina egna händelser (jobb, hem, hälsa, dagbok mm). I varje logg finns fält enkel översikt, en slags trafikljus (i form av färg, skala 1-5, sämst-bäst) för att visa status överlag de dagar jag inte orkar lägga tid på mer ingående information. Längst upp har jag givetvis automatiska data som dagens datum men jag skulle också vilja att ett fält visar datumet som dagens veckodag – Måndag/Tisdag/Onsdag... – utan att manuellt behöva välja i en lista. Går det?

Tack på förhand!
Eva

För info:
Har använt FM sedan tidigt 90-tal men är inte proffs på bygge och/eller script och annat avancerat, bara basics. Använder FM 13 på MBP 10.8.5 (yes, OS behöver sannerligen uppdateras!).

Skriv en kommentar

Din epost-adress stannar hos oss.