MBS Plugin 14.2

Christian Schmitz stellte Neuerungen aus der Version 14.2 des MBS Plugins vor. Diese umfassten u.a. erweitere JSON-Funktionen, bedingte Formatierungen bei der Erzeugung von Excel-Dateien mit Hilfe der LibXL, Funktionen zur Druckersteuerung in iOS Lösungen, welche mit dem iOS SDK erstellt wurden sowie neue Funktionen für den Zugriff auf MongoDB. Weitere Neuerungen betreffen die kürzlich vorgestellten Overlay-Funktionen, Spezialfunktionen zum Löschen des Previews von Container-Inhalten, zum Lesen und Setzen von Datei-Sperren und eine neue Funktion zur schnellen Berechnung von gleitenden Durchschnitten in Listen mit Zahlenwerten....

Speichern von Daten im FileMaker Schema

Nils Waldherr stellte eine trickreiche Methode vor, um Daten innerhalb des Schemas einer FileMaker-Tabelle zu speichern und zu übertragen. Ausgangspunkt für diese Methode war die Überlegung, dass es hilfreich wäre, bei einer Dateimigration per “Clone ohne Datensätze” zusätzliche Informationen an das Zielsystem zu übermitteln. Im gezeigten Beispiel sollten also die Versions-Nummer für das Update, ein Zeitstempel, ein Infotext und weitere Einstellungs-Datensätze im Migrations-Ablauf vom Entwicklungs-Server auf das Produktiv-System übertragen werden....

neue MBS Beispieldateien

Christian Schmitz stellte einige neue Beispieldateien für Funktionen des MBS Plugins vor. Darunter farbige Progressbars, Conditional Formatting in Excel-Dateien per LibXL, Nutzung von PDF-Kit Funktionen und Bildschirm-Overlays. Die Overlays bieten zahlreiche Möglichkeiten, um beliebige graphische Objekte auf dem Bildschirm zu platzieren. Zum Beispiel Hilfslinien, Bestätigungs-Meldungen, Assistenz-Funktionen oder Hervorhebungen. Die Objekte können dabei transparent sein und auch mit Mouse-Enter oder Mouse-Klick Events ausgestattet werden, mit denen sich FileMaker-Scripte aufrufen lassen. Eine weitere Beispieldatei zeigte die Möglichkeit, flexible Seitenlayouts innerhalb eines PDF-Dokuments zu erzeugen mit platzierten Bildern und mehrspaltigem Text, der sich flexibel im Layout befüllen lässt....

Audit Log

Andre Kopietz stellte die Audit Log Demo-Datei von Calvin Mosiman vor, die er für eigene Zwecke adaptiert hat. In der Datei wird eine Technik aus Feld-Triggern, globalen $$Variablen und Auto-enter Calculations verwendet. Eine ausführliche Erläuterung zu dieser Technik gibt es im Video bei Richard Carlton: FileMaker - Audit Logs - Day 1 - With Calvin https://www.youtube.com/watch?v=P2SdgUSm69U Die Demo-Datei gibt es hier zum Download: https://bit.ly/2LbHoPd Die Frage von Andre war nun, wie sich dieser Ansatz für eine Mehrdateien-Lösung erweitern lässt....

Rechnungseingang automatisieren mit ChatGPT

Zwar steht uns mit der Einführung der E-Rechnung bald ein maschinenlesbares Format zur Verfügung, um den Rechnungseingang zu automatisieren. Jedoch gibt es weiterhin Fälle, in denen Rechnungen in herkömmlichen Formaten als PDF oder eingescannter Papierrechnung vorliegen werden. Zunächst wird es eine verlängerte Übergangsfrist für die Ausstellung von XML-basierten Rechnungen bis Ende 2027 geben. Es werden also noch eine ganze Weile Rechnungseingänge zu erwarten sein, die nicht in den spezifizierten Formaten ausgestellt wurden....

Elektronische Rechnungen mit ZugFeRD XML und Factur-X

Robert Hermann zeigte seine Implementierung für elektronische Rechnungen im XML-Format. In seinem ERP-System hat er bereits beide Wege für die Ausgabe und zum Einlesen von XML-Rechnungen realisiert. Die Erzeugung des erforderlichen XML-Schemas wird durch die Verkettung mehrerer Text-Templates erreicht, in denen die XML-Bausteine für Kopf-, Mittel- und Fußteil der Rechnung sowie für den sich wiederholenden Teil der Rechnungspositionen enthalten ist. Ein Script geht die einzelnen Bausteine durch und ersetzt innerhalb der Templates die Angaben aus den Rechnungs-Feldern....

Python mit MBS

Als Ergänzung zur Python-Integration in FileMaker erläuterte Marcel Moré die Möglichkeit, Python-Scripts mit Hilfe des MBS Plugins auszuführen. Die technische Vorgehensweise ist dabei sehr ähnlich zum bBox Plugin von beezwax. Es wird zunächst der Python Code als Text in FileMaker vorbereitet. Dieser wird dann als Datei in ein Temp-Verzeichnis gespeichert und diese mit ausführbaren Rechten versehen. Anschließend wird per Shell-Aufruf der Python Interpreter gestartet und die Datei mit dem Code als Eingabeparameter übergeben....

Datenbank Änderungen an eine externe Datenbank übertragen

Eine Frage aus der Teilnehmer Runde bezog sich auf die Möglichkeit, Änderungen einer FileMaker Datenbank automatisch an eine externe SQL-Datenbank zu übertragen. Ein Ansatz dafür könnte die Verwendung des neuen OnWindowTransaction Script Triggers sein. Im Claris Engineering Blog findet sich ein passender Eintrag dazu. Auch mit Hilfe des MBS Plugins eröffnen sich verschiedene Möglichkeiten, die in den nachfolgenden Blog Einträgen näher erläutert werden. Claris – Creating audit logs with the OnWindowTransaction script trigger...

08.11.2023 · 

MBS JSON Query – Teilstrings suchen

Bezug nehmend auf die neuen JSON Funktionen im MBS Plugin kam die Frage auf, ob es möglich ist, damit auch Elemente innerhalb eines JSON Objekts anhand eines Teilstrings zu identifizieren. Hier gibt es mehrere Möglichkeiten. Beispiele dazu finden sich in den umfangreichen Dokumentation von JMESPath und JSONPath: JMESPath Specification https://jmespath.org/specification.html JsonCons JSONPath https://danielaparker.github.io/JsonCons.Net/articles/JsonPath/JsonConsJsonPath.html

08.11.2023 · 

MBS Plugin 13.5

Christian Schmitz nutzte die Gelegenheit, um neue Funktionen der MBS Version 13.5 vorzustellen. ListDialog Eine für manche Anwendungsfälle nützliche Option, ist die Darstellung von Auswahl-Menus als Listen-Fenster inkl. Checkboxen. Stellt man zum Beispiel eine Länderauswahl dar, so lassen sich einzelne Einträge per Checkbox ankreuzen. Zur schnellen Suche in den vielen Einträgen gibt es über der Liste eine Sucheingabe, welche die angezeigten Listeneinträge entsprechend der Eingabe auf eine kleinere Auswahl verkürzt. Zur Nutzung dieser neuen Funktion reicht es aus, einen weiteren Parameter an die Funktion MBS(“ListDialog”) anzuhängen....