2010

Sep

3

Av

Ett ämne som flera föredragshållare behandlade på FileMakers utvecklarkonferens i San Diego för några veckor sedan var anpassade menyer. Med anpassade menyer kan du både lägga till egna menyval och inte minst “ta över” befintliga menyval, kortkommando och knappar i statusområdet. 

Ett ofta förekommande dilemma är att du har flera olika typer av poster i en tabell, t.ex. fakturor och kreditfakturor, lastbilar och personbilar, olika sorters inventarier m.m., men när du visar en post av en typ vill du bara söka bland dessa. Visar du en post med en faktura vill du inte också söka bland kreditfakturorna, visar du en post med en personbil vill du inte göra sökningar bland lastbilarna osv.

Jag har en databas med ett antal bilmodeller och tillhörande bilmärken. Till varje bilmodell finns kopplat en region, som kan ha tre värden: EU, US och RU. Bläddrar jag i databasen byts layouten beroende på vilken region som gäller för bilmärket (regionen har i exemplet ingen verklig betydelse!), med olika sidhuvud, färger och flaggor, vilket jag skrivit om tidigare.

När jag visar en post för en region, t.ex. EU, vill jag bara söka bland de bilmärken som har regionen “EU”. När jag söker vill jag alltså inte blanda in bilmärken från de andra regionerna. Det är egentligen bara att skriva in “EU” i fältet Region tillsammans med övriga sökvillkor. Men det går att automatisera så att du inte glömmer det!

Jag tar helt enkelt över menykommandot “Utför sökning” som finns i menyn “Sökposter“, som visas när du är i sökläget. Menykommandot behåller kortkommando och annan funktion, men istället för att direkt utföra en sökning anropas ett manus där jag sätter in region beroende på layout som visas på alla sökposter (man kan ju göra flera sökposter), och sedan utför manuset sökningen.

Manuset ser ut så här:

SokRegionManus

För att “ta över” sökningen måste jag göra en anpassad meny. Från början används FileMakers standardmenyer för alla layouter i databasen. Det går att byta ut standardmenyerna för enstaka layouter eller för alla layouter i databasen mot en som du själv gör. Du kan modifiera befintliga kommandon och/eller lägga till nya.

Jag väljer kommandot Hantera anpassade menyer i menyn Arkiv och duplicerar menyuppsättningen “Egen menyuppsättning 1” (som är en kopia av FileMakers standardmenyer) och döper kopian till “Bilmärken“.

SokRegionAM1

Menyuppsättningen “Bilmärken” väljer jag för enkelhets skull som standardmeny för hela databasen, du väljer det längst ner i dialogrutan (se bild ovan). Jag väljer att redigera menyuppsättningen “Bilmärken” och redigerar sedan menyn “Sökposter Kopia“. Jag ändrar inget av de fördefinierade värdena men kryssar för att jag vill utföra ett manus istället för standardfunktionen. Manuset jag vill utföra är “Sök inom region” (se bilden ovan).

SokRegionAM2

När du sedan gör en sökning på vanligt FileMaker-vis (Ctrl/Cmd+F, Sökläge i menyn Visa etc) och trycker Retur för att söka startar manuset istället, som sätter in aktuell region på dina sökposter innan sökningen utförs. Om du t.ex. är i layouten “EU” och söker efter “van” i modell-fältet kommer du att hitta 8 poster i region EU, men inte den post som har region “US”. Går du till region “US” och söker efter “van” i modell-fältet hittar du bara en post.

För skojs skull lägger jag även till en egen meny som heter “Regioner” och placerar den mellan menyerna “Poster” och “Manus”. Den innehåller tre menyval som visar poster för de tre olika regionerna. Denna gång är det inga standardkommando som “tas över”, utan bara egna manus som körs.

SokRegionAM3

Exempeldatabas finns att ladda ner. OBS! Bilmärke och modeller är inte kompletta, används endast som exempel.

Lägga till och ändra egna menyuppsättningar kan du bara göra med FileMaker Pro Advanced.

SokAnpassadMeny.zip (65,06 kb)

Skriv en kommentar

  • (will not be published)
  • 9 + one =

Läs också: