Koppelingen overslaan

Basisprincipes van scripting in FileMaker

4.1 Basisprincipes van scripting in FileMaker

Scripting is een van de krachtigste functies van FileMaker waarmee u terugkerende taken kunt automatiseren, complexe workflows kunt creëren en de gebruikerservaring in uw databasetoepassing kunt verbeteren. In deze zelfstudiegids bekijken we de basisprincipes van scripting in FileMaker, waaronder lussen, voorwaarden en variabelen, en leren we hoe u een eenvoudig script kunt maken.

Inleiding tot FileMaker Scripts

Wat zijn FileMaker Scripts?

FileMaker Scripts zijn reeksen instructies die automatisch worden uitgevoerd om bepaalde taken in je database uit te voeren. Hiermee kunt u handmatige processen automatiseren, complexe berekeningen uitvoeren of de gebruikersbegeleiding optimaliseren. Met scripts kunt u bijna elke taak in FileMaker automatiseren, van het eenvoudigweg opslaan van een record tot het uitvoeren van complexe, uit meerdere stappen bestaande workflows.

Waarom scripting?

Met scripting kun je:

  • Bespaar tijd: Terugkerende taken automatiseren.
  • Fouten verminderen: Scripts zorgen voor consistente en foutloze processen.
  • Efficiëntie verhogen: Creëer workflows die gebruikers sneller en effectiever door je applicatie leiden.
Waar en hoe schrijf ik scripts?

Om de scripteditor in FileMaker te openen, selecteert u [Scripts > Scriptwerkruimte] in de FileMaker-menubalk, waarna het bijbehorende venster wordt geopend. In de scriptwerkruimte vindt u in de linkerkolom alle scripts die in uw oplossing beschikbaar zijn. De rechterkolom toont een lijst met alle beschikbare opdrachten, die u kunt filteren met categorieën en zoektermen. Je script staat in het midden van het hoofdgebied.

gFM-Bedrijf Open Source FileMaker Basis-ERP

De software voor de spoedcursus

Gratis downloaden
Open source ERP gebaseerd op Claris FileMaker

Basisbeginselen van scripting: lussen, voorwaarden, variabelen

Lussen in scripts

Met lussen kunt u een groep opdrachten herhaaldelijk uitvoeren. In FileMaker kunt u een lus gebruiken om door gegevensrecords te navigeren, bijvoorbeeld om een specifieke berekening toe te passen op elke gegevensrecord of om alle gegevensrecords na elkaar te controleren.

  • Voorbeeld: Met een Lus kun je door alle gegevensrecords in een lay-out bladeren en een specifiek veld in elke gegevensrecord bijwerken.
Lus
Veldwaarde instellen [Table::Field; Value]

Ga naar query/record [Volgende; Afsluiten na laatste].
Einde lus
Voorwaarden

Met voorwaarden kunt u verklaringen alleen uitvoeren als aan bepaalde criteria wordt voldaan. FileMaker gebruikt Als-dan-als-voorwaarden om beslissingen te nemen op basis van de gegevens.

  • Voorbeeld: A Als-commando kan worden gebruikt om alleen gegevensrecords te verwerken die aan bepaalde criteria voldoen, zoals controleren of een veld leeg is.
Als [Tabel::Veld = ""]
   Stel veldwaarde in [Table::Field; "Standaardwaarde"].
Anders
   Toon eigen dialoogveld ["Het veld is al ingevuld"].
Eindigen als
Variabelen

Variabelen zijn opslaglocaties voor gegevens die kunnen worden gebruikt tijdens de uitvoering van een script. Je kunt globale of lokale variabelen gebruiken om waarden op te slaan en te hergebruiken tussen de stappen van een script. Een scriptvariabele wordt aangeduid met een dollarteken als voorvoegsel en is alleen geldig in het betreffende script. Als de variabele voorafgegaan wordt door twee dollartekens ($$Variabele), is de waarde globaal en kan deze worden gebruikt in het hele FileMaker-bestand.

  • Voorbeeld: Met Variabele instellen kun je een waarde opslaan en later in het script opnieuw gebruiken.
Stel variabele [$Value; Waarde: Tabel::Veld] in.

Een eenvoudig script maken

Stap 1: Open scriptwerkruimte

Om een script te maken, opent u de scriptwerkruimte via Scripts > Scriptwerkruimte..

Stap 2: Nieuw script maken

Klik op "Nieuw script" en geef het script een betekenisvolle naam, bijvoorbeeld "Gegevensrecord opslaan en bevestigen".

Stap 3: Scriptstappen toevoegen

Voeg de gewenste scriptstappen toe. Je kunt bijvoorbeeld een script maken dat de huidige gegevensrecord opslaat en een bevestiging weergeeft.

Stel veldwaarde in [Table::Field; "Nieuwe waarde"].
Gegevensrecord/query opslaan
Toon eigen dialoogvenster ["De gegevensrecord is succesvol opgeslagen"].
Stap 4: Script testen

Nadat je het script hebt gemaakt, test je het om er zeker van te zijn dat het werkt zoals gewenst. Ga hiervoor naar de browsemodus en voer het script uit.

Stap 5: Het script aanpassen en uitbreiden

Als het script werkt zoals verwacht, kun je het naar wens uitbreiden of aanpassen om complexere taken uit te voeren. Je kunt bijvoorbeeld voorwaarden toevoegen om het script alleen onder bepaalde omstandigheden uit te voeren.

FileMaker Script-werkruimte
FileMaker Script-werkruimte van gFM Business

Scriptstructuur in gFM-Business

gFM-Business bevat een aantal scripts om de functionaliteit van de ERP-software te garanderen. Alle scripts in gFM-Business zijn georganiseerd volgens de volgende structuur:

  • Lay-out scripts (lay.)Elke schermlay-out in gFM-Business heeft precies één lay-outscript waarin alle functies van de respectieve lay-out worden opgevraagd. De lay-out "scr.Faktura_Rechnungen" wordt bijvoorbeeld aangestuurd via het lay-outscript "lay.Faktura_Rechnungen". Alle functies, zoals "Nieuwe factuur" of "Dubbele factuur", worden doorgestuurd naar het script met de respectieve functie als scriptparameter, waar ze worden opgevraagd en uitgevoerd.
  • Gedeeltelijke scripts (ts.)Gedeeltelijke scripts zijn, zoals de naam al zegt, geen volledige scripts, maar scripts die alleen bepaalde delen uitvoeren of generiek kunnen worden aangeroepen via parameters. Gedeeltelijke scripts worden ofwel toegewezen aan een module (bijvoorbeeld "ts.fak_invoice_duplicate") of kunnen generiek worden aangeroepen zonder een moduleafkorting als voorvoegsel.
  • REST API-scripts (REST.)Deze scripts bevatten een interfacescript voor een systeem van een derde partij dat alle functies van de interface voor dit systeem bevat en via parameters kan worden bestuurd.
  • Systeemscripts (sys.)Systeemscripts worden contextonafhankelijk op het systeem uitgevoerd, zoals het startscript "sys.Start".

FileMaker ERP met duidelijke en volledig gedocumenteerde scriptstructuur

Meer informatie
Professionele ERP-software

Veelgestelde vragen over FileMaker scripts

  • Wat zijn FileMaker-scripts en hoe helpen ze bij automatisering?
    • FileMaker scripts zijn een reeks opdrachten die taken automatiseren. Ze helpen om terugkerende processen zoals het maken van records, het uitvoeren van berekeningen of het navigeren tussen lay-outs efficiënter te maken. Met scripts kunt u workflows beheren, zodat gebruikers minder handmatige stappen hoeven uit te voeren en er minder fouten optreden.
  • Hoe maak ik een eenvoudig script in FileMaker?
    • Om een script te maken, open je de scripteditor via "Script" > "Scriptwerkruimte". Klik op "Nieuw script" en geef het een naam. Je kunt nu opdrachten toevoegen zoals "Nieuw record", "Ga naar lay-out" of "Records sorteren". Als het script klaar is, kun je het opslaan en uitvoeren. Scripts kunnen eenvoudig worden aangepast om verschillende taken binnen uw FileMaker-oplossing te automatiseren.
  • Wat zijn lussen in FileMaker-scripts en hoe worden ze gebruikt?
    • Een lus is een scriptopdracht die een reeks acties herhaalt totdat aan een bepaalde voorwaarde is voldaan. Je voegt "loop" en "end loop" toe aan het script en tussen deze commando's specificeer je de acties die moeten worden herhaald. Een lus kan bijvoorbeeld worden gebruikt om door een lijst met gegevensrecords te navigeren en deze bij te werken totdat alle gegevensrecords zijn verwerkt.
  • Hoe gebruik ik voorwaarden in FileMaker-scripts?
    • Je kunt voorwaarden gebruiken om de stroom van een script te regelen door alleen bepaalde acties uit te voeren als aan bepaalde criteria is voldaan. Met de opdracht "If/else" kun je controleren of een voorwaarde waar is en op basis daarvan verschillende acties uitvoeren. Je kunt bijvoorbeeld een script maken dat alleen een nieuwe gegevensrecord aanmaakt als een bepaald veld leeg is.
  • Hoe gebruik ik variabelen in FileMaker-scripts?
    • Variabelen zijn tijdelijke opslaglocaties waarin je waarden zoals tekst, getallen of de resultaten van berekeningen kunt opslaan. Ze kunnen in het script worden gedefinieerd met de opdracht "Variabele instellen". Er zijn twee soorten variabelen: Lokale variabelen (beginnen met $) en globale variabelen (beginnen met $$). Lokale variabelen zijn alleen beschikbaar terwijl het script wordt uitgevoerd, terwijl globale variabelen behouden blijven, zelfs nadat het script is voltooid.
  • Hoe kan ik een script maken dat meerdere gegevenssets verwerkt?
    • Je kunt een script maken dat meerdere gegevensrecords bewerkt door een lus te gebruiken. In de lus kun je de functie "Ga naar volgende gegevensrecord" invoegen en dan de gewenste wijzigingen aanbrengen voor elk gegevensrecord. Het script loopt dan door elk gegevensrecord totdat ze allemaal verwerkt zijn. Gebruik de functie "Einde lus" om ervoor te zorgen dat de lus eindigt wanneer het laatste gegevensrecord is bereikt.
  • Hoe kan ik gebruikersinteracties integreren in een script, bijvoorbeeld via dialogen?
    • Je kunt gebruikersinteracties in scripts inbouwen door aangepaste dialoogvensters te gebruiken. De opdracht "Toon aangepast dialoogvenster" opent een venster waarin de gebruiker informatie kan invoeren of een selectie kan maken. Dit is handig als het script invoer vereist voordat het verder gaat, bijvoorbeeld als een gebruiker de naam van een nieuwe klant moet invoeren voordat het record wordt aangemaakt.
    • Als je complexere dialogen wilt maken, kun je dit doen op basis van een eigen lay-out voor de dialoog, die je in het script kunt weergeven met de opdracht "Nieuw venster". In dit geval moet je zelf velden en knoppen op de dialooglay-out plaatsen en de bijbehorende knopfuncties toewijzen.
  • Hoe kan ik fouten in FileMaker-scripts opvangen en afhandelen?
    • U kunt fouten in FileMaker-scripts opvangen met de opdracht Foutregistratie inschakelen. Met deze opdracht voorkomt u dat FileMaker een foutbericht weergeeft en kunt u doorgaan met het script. U kunt vervolgens de opdracht "Get(LastErrorNo)" gebruiken om de fout te controleren en het script dienovereenkomstig aan te passen, bijvoorbeeld door een alternatieve actie uit te voeren of de gebruiker te informeren.
  • Hoe kan ik lay-outwijzigingen en navigatie automatiseren met scripts?
    • Scripts zijn ideaal voor het automatiseren van lay-outwijzigingen en het navigeren van gebruikers door de applicatie. Je kunt de opdracht "Ga naar lay-out" gebruiken om te schakelen tussen lay-outs en voorwaarden instellen om de lay-out aan te passen afhankelijk van de gebruikersrol of gegevenssituatie. Dit is handig voor het vereenvoudigen van de gebruikersbegeleiding in complexe applicaties en om ervoor te zorgen dat de gebruiker altijd op de juiste plek terechtkomt.
  • Kan ik scripts automatisch uitvoeren wanneer ik een database start?
    • Ja, je kunt scripts automatisch uitvoeren bij het starten van een database door een startscript te definiëren. Ga naar "Bestand" > "Bestandsopties" en selecteer het gewenste script onder "Openen". Dit script wordt automatisch uitgevoerd zodra de database wordt geopend. Je kunt het bijvoorbeeld gebruiken om de gebruikersinterface aan te passen, berekeningen uit te voeren of initiële gegevensrecords te laden.
  • Hoe test en debug ik een script in FileMaker?
    • Om een script te testen, kun je de scriptdebugger (stapsgewijze modus) activeren in de scriptwerkruimte, waarmee je het script stap voor stap kunt uitvoeren en kunt controleren hoe het werkt. Je kunt ook onderbrekingspunten instellen waarop het script wordt onderbroken om de waarden van variabelen of de status van het script te controleren. Met de functie "Gegevensweergave" kun je de huidige status van velden en variabelen in realtime controleren.
4.1 Basisprincipes van scripting in FileMaker

Deel deze pagina:

ERP-software zo flexibel als uw bedrijf.
We geven je graag advies.

Aanpasbare ERP-software voor Mac, Windows en iOS.

U bevindt zich hier: Basisprincipes van scripten in FileMaker | Hoofdstuk 4.1