fmk2015: von skriptparametern variablen und globalen by patrick risch
TRANSCRIPT
![Page 1: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/1.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
von Skriptparametern, Variablen und Globalen
Vortrag: Layout von Volker Krambich und Mr. Watson NEU im Raum Elbe
![Page 2: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/2.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerInformationssicherheit & Risikomanagement
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Über mich…
• Patrick Risch, 47
• FileMaker Entwickler seit Version 2
• Zertifizierter FileMaker Entwickler seit Version 8-13 und bald 14
• CAS Informationssicherheit & Risikomanagement (CompTIA security+ und bald CISSP, BSI-Sicherheitsbeauftragter*)
• CAS Lebensmittelrecht Schweiz / EU
• FileMaker Lösung für die Produktkennzeichnung nach der Lebensmittelverordnung (EU Richtlinie 1169/2012)
• Co-Organisator der FileMaker Konferenz
* bis Dezember 2015
![Page 3: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/3.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
In diesem Vortrag…
• Scriptparameter: Übergabe, Verarbeitung
• Globale (und andere) Felder: Setzen und Lesen für Scriptsteuerung
• Lokale und Globale Variable: Setzen, Verarbeitung und Löschen
![Page 4: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/4.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Verwendung…
Globale,Variable & Eigene Funktion
• Halten oder liefern einen bestimmten Wert (während der Dauer einer Sitzung)
Scriptparameter
• Um einem Script einen Wert zu übergeben
• Zur Übergabe von Werten von einer zu einer anderen Datei
![Page 5: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/5.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Sitzung…
• FileMaker Pro oder Go öffnen eine gehostete Datei
• FileMaker Pro oder Go öffnen eine lokale Datei
• FileMaker Server Script Engine öffnet eine Datei
• WebDirect verbindet sich mit einer Datei
![Page 6: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/6.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Globale, Variablen, ParameterVariable $
Variablen $$
Globale Felder
Eigene Funktionen
Verfügbarkeit Innerhalb des aktiven Scripts
Tabellen-übergreifend
Tabellen-übergreifend
Tabellen-übergreifend
Verwendung in…
Berechnungen (Funktionen, Scripts)
Berechnungen (Felder, Funktionen, Scripts)
Berechnungen (Felder, Funktionen, Scripts)
Berechnungen (Felder, Funktionen, Scripts)Dauer der
VerfügbarkeitSolange das aktive Script ausgeführt wird
Bis Variable gelöscht oder Sitzung beendet wird.
Sitzungsdauer für aktiven Benutzer, mit Initialisierungswer
Sitzungs- und Benutzer-übergreifend
Wird erstellt mit…
Scriptbefehl: Setze Variable:Funktion: SetzeVars
Scriptbefehl: Setze Variable:Funktion: SetzeVars
Definieren: Datenbank
Erstellung einer eigenen Funktion
Wird geändert mit…
Scriptbefehl: Setze Variable:Funktion: SetzeVars
Scriptbefehl: Setze Variable:Funktion: SetzeVars
Scriptbefehl: Feldwert setzen
Bei Erstellung der eigenen Funktion
![Page 7: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/7.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Globale Felder
Gibt es seit vielen Versionen in FileMaker
• Definieren: Datenbank: Feld Erstellen
Löschen• Definieren: Datenbank: Feld löschen
• Scriptbefehl: Feldwert setzen
• Eingabe in Feld
Ändern
![Page 8: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/8.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Globale Felder
• Kann als Speicher für Programmparameter verwendet werden, aber…
• Jeder Benutzer startet mit dem ‚Standard‘-Wert des globalen Feldes.
• Während der Sitzung kann der Benutzer den Inhalt ändern.
• Beim Beenden der Sitzung wird bei einer gehosteten Datei der Inhalt auf den ‚Standard‘-Wert zurückgestellt. Lokale Dateien merken sich den Wert der letzten Sitzung.
Einsatz
• Möglichkeit das Problem zu umgehen: Wert des globalen Feldes beim Start mittels „Feldwert setzen“ setzen.
![Page 9: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/9.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Globale Felder
Demo
![Page 10: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/10.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Lokale Variablen — $Variable
• Scriptbefehl: Variable setzen
• Funktion: SetzeVar
Erstellen und Ändern
Löschen• Automatisch bei Scriptende
-oder-
• Scriptbefehl: Variable setzen
• Funktion: SetzeVar
![Page 11: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/11.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Lokale Variablen
Besonderheiten• Jeder Benutzer hat während der Dauer des aktiven Skripts seinen eigenen Wert.
• Variable wird beim Beenden des aktiven Scripts automatisch gelöscht.
• Die Variable steht nur solange (dem aktuellen Script) zur Verfügung wie das Script läuft.
• Sub-Skripts wissen nichts von dieser Variable
![Page 12: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/12.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Lokale Variablen
Aus der FileMaker Hilfe…Sobald sie definiert sind, können lokale und globale Variablen in jeder Formel innerhalb ihres Geltungsbereichs referenziert werden.
Der Geltungsbereich von lokalen und globalen Variablen wird durch die aktuelle Datei begrenzt.
Der Geltungsbereich von lokalen Variablen ist das aktuelle Script.
Lokale Variablen, die in einer Formel definiert sind, haben die Datei als Geltungsbereich, stehen aber nur zur Verfügung, wenn keine Scripts ausgeführt werden.
Lokale und globale Variablen (oder auch zwei lokale Variablen in unterschiedlichen Scripts) können den gleichen Namen haben, werden aber als unterschiedliche Variablen behandelt und können unterschiedliche Werte speichern.
![Page 13: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/13.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Lokale Variablen
Besonderheiten• ….
• Die Variable steht nur solange (dem aktuellen Script) zur Verfügung wie das Script läuft. Aber es geht auch: Eigene Funktionen, Felder vom Typ Berechnungen
• …
![Page 14: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/14.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Lokale Variablen — $Variable
Demo
![Page 15: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/15.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Globale Variablen — $$Variable
• Scriptbefehl: Variable setzen
• Funktion: SetzeVar
Erstellen und Ändern
Löschen• Scriptbefehl: Variable setzen
• Funktion: SetzeVar
![Page 16: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/16.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Globale Variablen — $$Variable
Besonderheiten• Jede Benutzerin hat während der Dauer seiner Sitzung seinen eigenen Wert.
• Variable wird beim Beenden der Sitzung automatisch gelöscht.
• Die Variable steht anderen Scripts und Berechnungen innerhalb der gleichen Datei zur Verfügung.
• Guter Programmierstil: Globale Variablen löschen sobald diese nicht gebraucht werden.
![Page 17: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/17.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Globale Variablen — $$Variable
Demo
![Page 18: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/18.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Scriptparameter
• Über Tasten
• Script-Trigger
• Eigene Menüs
• Andere Scripts
• XML / URL Abfragen
QuellenÜbergabe
• Hard-codiert
• (Globale) Feldwerte
• ($ und $$) Variablen
• Eigene Funktionen
Mit Hilfe von Scriptparameter lassen sich bestimmte Werte an ein bestimmtes Script (auch in einer anderen Datei) übergeben.
![Page 19: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/19.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Scriptparameter (aus FileMaker)
![Page 20: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/20.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Scriptparameter (aus Browser)
• www.standpunkte.li / Adresse des FileMaker Server
• /fmi/xml/ lässt den FileMaker Server aufhorchen
• dazwischen kommen noch einige weitere Tags
• -script gibt an welches Script ausgeführt werden soll
• -Parameter gibt den Parameter an
http://192.168.123.101/fmi/xml/fmresultset.xml?-db=Adressen-lay=Kontakten&-script=myscript&-script.param=FMK2015&-findall
![Page 21: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/21.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Übergabe von mehreren Werten in einem Scriptaufruf
• Kapseln der Informationen
z.B. 2 Feldwerte und eine Variable soll übergeben werden:
Script ausführen : [„meinScript“ ; Parameter: Feld1 & „¶“ & Feld2 & „¶“ & $Variable]
![Page 22: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/22.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Parameter auslesen
Hole (ScriptParameter)
Damit das Script etwas vom Parameter mitkriegt, müssen die Parameter ausgelesen werden.
• Liest den Scriptparameter aus.
• Bei der Übergabe mehrerer Scriptparameter wird noch die Funktion ‚HoleWert‘ benötigt.
![Page 23: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/23.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Übergabe von mehreren Werten in einem ScriptaufrufScript ausführen : [„meinScript“ ; Parameter:
Austauschen (Feld1; „¶“; „|“) & „¶“ &
Austauschen (Feld2; „¶“; „|“) & „¶“ & $Variable]
Warnung! Wenn zu erwarten ist, dass ein Parameter eine Zeilenschaltung enthält, dann sollte die Parameter etwas ‚luxuriöser‘ gehandhabt werden.
Auslesen von mehreren WertenSetze Variable : [„$meineVariable1“ ;
Austauschen (HoleWert ( Hole ( Scriptparameter) ;1); „|“ ; „¶“) ]
Setze Variable : [„$meineVariable2“ ;
Austauschen (HoleWert ( Hole ( Scriptparameter) ;2); „|“ ; „¶“) ]
![Page 24: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/24.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Parameter Rückgabe
Aktuelles Script verlassen [Ergebnis: Wert]
Scriptparameter können auch als Resultate (an das aufrufende Script) zurückgegeben werden.
• Es können ein oder mehrere Werte zurückgegeben werden.
• Um die Rückgabe im anderen Script abzufragen wird ‚Hole (ScriptErgebnis) benötigt
![Page 25: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/25.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Vorsicht!
Parameter sind immer vom Typ ‚Text‘
• Umwandlung mit LiesalsZahl, LiesalsDatum, etc. um Überraschungen vorzubeugen.
Demo: Script ‚Schleife‘
![Page 26: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/26.jpg)
Patrick Risch, zertifizierter FileMaker EntwicklerArbeiten mit Scriptparameter, Variablen und Globalen
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Mehr?
Links:
• https://www.filemaker-magazin.de/forum/alle-beitraege/114234
• http://sixfriedrice.com/wp/passing-multiple-parameters-to-scripts-advanced/
• https://www.filemaker.com/support/product/docs/12/fms/fms12_cwp_xml_en.pdf
![Page 27: FMK2015: Von Skriptparametern Variablen und Globalen by Patrick Risch](https://reader034.vdocuments.site/reader034/viewer/2022042600/588071fe1a28ab64028b56ab/html5/thumbnails/27.jpg)
Vortragende(r) Titel Vortrag
FileMaker Konferenz 2015 Hamburgwww.filemaker-konferenz.com
Vielen Dank unseren Sponsoren
Danke für das Bewerten dieses Vortrages