Planera ett script
Ju mer tid du ägnar åt att planera ditt script, desto troligare är det att du uppnår det resultat som du har tänkt dig. Ställ dig följande frågor under planeringen:
 •
Går det att dela upp uppgiften i mindre deluppgifter? Du kan definiera delscripts för varje enskild deluppgift och därefter definiera ett script som utför delscripten. Det är lättare att utforma och testa flera små scripts än ett enda stort. Du kan även återanvända dina delscripts inom andra områden. (Använd Utför script scriptsteg om du vill använda ett delscript i ett annat script.)
 •
Vilka scriptsteg ska utföras och under vilka omständigheter? Ska alla scriptsteg alltid utföras? Ska vissa scriptsteg utföras ett antal gånger tills ett visst villkor är uppfyllt? Ska scriptet anropa andra scripts och delscripts? Du kan styra scriptets förlopp på flera olika sätt. Mer information om hur du skapar scripts med villkorsstyrda steg finns i Scriptsteg i kategorin Kontroll.
 •
Vill du att scriptet ska köras i en viss layout? Scripts definieras på filnivå och kan anropas från vilken layout som helst. Du bör därför se till att scriptet fungerar i alla layouter där det kan tänkas användas. Använd Gå till layout scriptsteg för att byta layout.
 •
 •
Finns alla data du behöver i en enda databasfil eller ska scriptet utföra uppgifter i flera filer? Om du använder flera filer, vilka ska scriptet öppna? I vilken fil ska scriptet (scripten) definieras? I de flesta fall bör ett script definieras i samma fil som de data som bearbetas av scriptet. I databaslösningar med mer än en fil kan det behövas separata scripts i varje fil, beroende på hur pass komplexa uppgifter som ska utföras av scriptet.
 •
Vilken post ska scriptet börja med? När du till exempel använder Loop scriptsteg måste du bestämma om loopen ska börja med den första eller den sista posten, med en speciell post eller med den aktuella Hittade poster. (Använd Gå till post/sökpost/sida scriptsteg, Gå till relaterad post scriptsteg eller Gå till portalrad scriptsteg nä du vill ange en startpost. Om du inte lägger till ett scriptsteg för navigering för att bestämma vilken post som är den aktuella, startar loopen med den post som är den aktuella posten när scriptet utförs.)
 •
Vilket fönster vill du använda? Ett script är från början kopplat till ett specifikt fönster vilket kan finnas i bakgrunden. Scriptet förblir i fönstret till en scriptåtgärd växlar till ett annat fönster. Du kan t.ex. använda Välj fönster scriptsteg om du vill ange ett annat fönster. Om angivet fönster inte är tillgängligt växlar scriptet till förgrundsfönstret för filen. När du pausar ett script kommer det associerade fönstret att bli förgrundsfönstret, om det är tillgängligt.
 •
Ska scriptet växla mellan olika lägen? Ett script går att köra från bearbetningsläge, sökläge, layoutläge och granskningsläge. Kontrollera att scriptet är i rätt läge innan du använder det. Använd till exempel Bearbeta scriptsteg när du ska ändra data i fält och poster och Sök scriptsteg när du ska utforma en sökpost eller utföra en sökning.
Obs!  Scripts i layoutläge växlar automatiskt till bearbetningsläge innan de utförs.
 •
Vilka fält och layouter kommer scriptet att behöva? Vissa steg (exempelvis Gå till fält scriptsteg och Infoga text scriptsteg) kräver att ett fält ligger på den aktuella layouten, medan andra (exempelvis Tilldela fält scriptsteg) inte gör det. Använd antingen Gå till layout scriptsteg för att växla till en layout som har de fält som scriptet kräver, eller placera fälten i det grå området till höger om layouten för att göra fälten tillgängliga för scriptstegen, men inte för användarna.
 •
Ska posterna bearbetas i en viss ordning? Fastställ om posterna ska använda den aktuella sorteringsordningen eller en bestämd sorteringsordning eller om de ska vara osorterade (i den ordning som de skapades). Använd Sortera poster scriptsteg och Sortera ej poster scriptsteg innan du anger en loop för att ordna posterna i rätt ordning innan du bearbetar dem.
 •
 •
 •
 •
Hur ska du testa scriptet? Använd Paus/fortsätt script scriptsteg om du vill göra paus vid förutbestämda platser i scriptet. Spara en kopia av databasen och definiera och testa scriptet i kopian så att originaldatabasen bevaras intakt.
Obs!  Om du använder FileMaker Pro Advanced kan du använda Scriptavlusaren för att testa och felsöka scripts.
 •
Hur ska du hantera fel som uppstår (t.ex. om inga poster hittas vid sökning)? Du kan ta reda på det senaste felet som har rapporterats av FileMaker Pro med hjälp av Funktionen Get(SenasteFel). Använd den här funktionen samt If scriptsteg, Else If scriptsteg och Else scriptsteg när du vill skapa scripts som svarar på användarfel eller oväntade resultat. Om du vill ha ännu större kontroll kan du använda Manuell felhantering scriptsteg för att dölja de felmeddelanden som normalt visas av FileMaker Pro i sådana situationer och ersätta dem med egna felmeddelanden med Visa anpassad dialogruta scriptsteg.
 •
Bör alla användare tillåtas att utföra scriptet? Använd behörighetsuppsättningar för att styra användarnas tillgång till scripts. Med hjälp av behörighetsuppsättningar kan du tillåta att användarna utför eller ändrar enstaka script, inga scripts eller alla scripts. Du kan också ange standardbehörighet för varje behörighetsuppsättning för alla scripts som definieras senare i filen. Om du anger att ett script ska köras med fullständig behörighet kan scriptet utföra uppgifter åt användarna som normalt inte tillåts med användarnas behörighet. Mer information finns i Hantera behörighetsuppsättningar.
 •
Hur ska användarna utföra scriptet? Du måste antingen skapa en knapp som ska utföra scriptet eller ange att scriptet ska läggas till på Scripts-menyn. Det går också att köra scripts från Scriptfönster eller när en scriptutlösare aktiveras. Du kan t.ex. använda scriptutlösaren VidFörstaFönsterÖppna och köra ett script när databasen öppnas.
När du har tänkt igenom de här frågorna kan du börja hantera scripts i databasen. Mer information finns i Skapa och redigera scripts.