FMK2012: Meine besten Custom Functions von Arnold Kegebein
1. Meine besten Custom Functions
Eigene Funktionen für die FileMaker Datenbank
Dipl.-Ing. Arnold Kegebein FileMaker Konferenz 2012 Salzburg
Meine besten Custom Functions www.filemaker-konferenz.com
2. Zu meiner Person
• Diplom-Ingenieur der Technischen Informatik
• 6½ Jahre in den USA als IT Manager
• Seit 2006 Entwicklung mit FileMaker
• 25 Jahre Datenbankerfahrungen: Access, Oracle, MySQL, u. a.
• Hohe Aufmerksamkeit auf Usability und Design
• Regelmäßiger Autor im FileMaker Magazin
Dipl.-Ing. Arnold Kegebein FileMaker Konferenz 2012 Salzburg
Meine besten Custom Functions www.filemaker-konferenz.com
8. CFs für die Listenbearbeitung
• ListHasValue( list; value )! Prüfen, ob ein Wert in der Liste vorkommt
• ListIndex( list; value )! ! Position eines Wertes in der Liste
• ListRemove( list; value )!
! Einen Wert und seine Wdhl. aus der Liste entfernen
• ListUnique( list )! ! ! Entfernt Duplikate aus der Liste
• ListSort( list )! ! ! ! Liste sortieren (erfordert ListMerge)
• ListMerge( list1; list2 )! ! Zwei Listen alphabetisch zusammenführen
Dipl.-Ing. Arnold Kegebein FileMaker Konferenz 2012 Salzburg
Meine besten Custom Functions www.filemaker-konferenz.com
9. FrontTabs
• Ermittelt eine Liste mit den Objektnamen der aktiven Tabs
• Kann zur Wiederherstellung der zuletzt geöffneten Tabs
verwendet werden
‣ OnLayoutExit: FrontTabs in globaler Variablen speichern
‣ OnLayoutEnter: Variable auslesen und Objekte nacheinander
anspringen.
Dipl.-Ing. Arnold Kegebein FileMaker Konferenz 2012 Salzburg
Meine besten Custom Functions www.filemaker-konferenz.com
10. LayoutID
LayoutID( )
GetValue(
! LayoutIDs( Get( FileName ) );
! Get( LayoutNumber )
)
• Gibt die interne FileMaker ID für das aktuelle Layout zurück
• Hilfreich für robustere Datenbankentwicklung
‣ Layouts können umbenannt werden
‣ Layouts können in der Reihenfolge verschoben werden
Dipl.-Ing. Arnold Kegebein FileMaker Konferenz 2012 Salzburg
Meine besten Custom Functions www.filemaker-konferenz.com
11. LayoutNo
LayoutNo( _id )
Let( [
! _list = ¶ & LayoutIDs( Get( FileName ) ) & ¶
];
! PatternCount( Left( _list;
! ! Position( _list; ¶ & _id & ¶; 1; 1 )
! ); ¶ )
)
• Gibt die Layoutnummer anhand der Layout ID zurück
• Verwendung im Script-Befehl:
Gehe zu Layout [LayoutNr]
• »Gegenstück« zur Funktion LayoutID
Dipl.-Ing. Arnold Kegebein FileMaker Konferenz 2012 Salzburg
Meine besten Custom Functions www.filemaker-konferenz.com
12. GetAsColor
• Meine erste große, komplexe Funktion mit Rekursion
• Rechnet Farbwerte in dezimale oder hexadezimale Werte um
• Vielfältige Eingabeformate:
‣ Dezimal- oder Hexadezimalwerte
‣ Triplets für die RGB-Anteile:
Als Dezimal-, Hexadezimal- oder Prozentwerte
• Drei verschiedene Ausgabeformate:
‣ Dezimal- oder Hexadezimalwert
‣ Hexadezimalwert mit vorangestelltem Hash (#)
Dipl.-Ing. Arnold Kegebein FileMaker Konferenz 2012 Salzburg
Meine besten Custom Functions www.filemaker-konferenz.com
13. CFs für Parameter Variablen
• #( _key; _value )! ! Benannte Parameter (param) erzeugen
• #Get( _key; _params )! ! Wert eines Parameters aus Parameterliste holen
• #Checked( )!
! ! ! ! Zuweisung und Prüfung der Script Parameter
• #Assign( _params )!! ! Parameterwerte lokalen Variablen zuweisen
• VarCheck( _paramDef )
! Prüfen, ob bestimmte lokale Variablen existieren
• TextBetween( _text; _start; _end; _type ) Text zwischen bestimmten Zeichen
• #List( _vars )! ! ! ! Nennt die Namen aller Parameter in der Liste
• #Delete( _key; _params )! Entfernt einen Parameter aus der Parameterliste
• ClearVars( _vars )! ! ! Löscht alle genannten lokale und globale Variablen
Dipl.-Ing. Arnold Kegebein FileMaker Konferenz 2012 Salzburg
Meine besten Custom Functions www.filemaker-konferenz.com
14. Parameter Variablen
• Benannte Parameter:
#( "Name"; "Arnold" ) ! "Name==Arnold¶"
• Mehrere Parameter werden wie Texte verknüpft: &
• Parameterwert kann beliebige Zeichen einschließlich ¶ enthalten
• Kaskadierende Definition ist möglich:
#( "A"; #("B1"; 1) & #("B2"; 2) )
• Beibehaltung von Textformatierungen
• Ideal für Script Parameter
Dipl.-Ing. Arnold Kegebein FileMaker Konferenz 2012 Salzburg
Meine besten Custom Functions www.filemaker-konferenz.com
15. ListFunction
• Erstellt Listen, auf vielfältige Art
• Basiert auf einer Funktion von Agnés Barouh
• Im FileMaker Magazin 2010-04 ausführlich beschrieben
Dipl.-Ing. Arnold Kegebein FileMaker Konferenz 2012 Salzburg
Meine besten Custom Functions www.filemaker-konferenz.com
16. Vielen Dank für Ihre Aufmerksamkeit
Dipl.-Ing. Arnold Kegebein FileMaker Konferenz 2012 Salzburg
Meine besten Custom Functions www.filemaker-konferenz.com
17. Vielen Dank unseren Sponsoren
Danke für das Bewerten dieses Vortrages
Dipl.-Ing. Arnold Kegebein FileMaker Konferenz 2012 Salzburg
Meine besten Custom Functions www.filemaker-konferenz.com