MBS Birthday Sale

We celebrate in April 2020 the 20th anniversary of our company. Founded on 1st April 2000 as a sole proprietorship, we later upgraded in 2005 to a GmbH (limited) and over the years even got staff. As we trade as Monkeybread Software, we got a trademark for this name. Since 2001 we provide Xojo plugins and since 2006 we provide a FileMaker plugin.

Thanks to the thousands of customers around the world, who support us by buying licenses over the years. Thank you for the feedback, the greetings and the good testimonials we got.

Our party got moved to 2021 where we celebrate 20+1 years of the Monkeybread Software next year. Same party may also celebrate 15 years of MBS FileMaker Plugin, my 40th birthday and 20 years of our MBS Xojo Plugins.

As a thank you for all our existing and new customers, we offer for April a 20% discount on purchases for all our licenses. Coupon code 20years needs to be entered for web shop to get the discount. For links to PayPal directly from our website, we can just reduce the amount automatically.

If you need a license or an update, please enjoy the discount. This includes our licenses as well as DynaPDF licenses. If your license expires in the future, you can order this month and extend your license for up to five years in the future!

Otherwise have a great spring time at home, stay healthy and see you at the next conferences!

New Examples 2020

ThumbnailNew Examples 2020


19:05 minutes

We made a new video to show you a few newer examples for MBS FileMaker Plugin this spring. Later download the plugin to try the examples yourself.

Watch on our website or on Youtube.


0:15Signature Field
2:40Barcode functions on MacOS
8:10WebView.Evaluate on MacOS
11:20Font in Script Workspace
13:50WebView.Evaluate on Windows
14:40Barcode functions on Windows
17:35Windows Media Player (WMPF functions)

Looping over records in FileMaker with error checking

Recently I got a client complaining about a crash in FileMaker Server with a script using plugin functions. A look on the trace output from our plugin via MBS("Trace"; $path) function call to write a log file showed the problem. The loops where running endless. And an endless loop eventually causes trouble when some resource is limited, e.g. available memory.

Looking on the script we basically found this a couple of times:

Go to Layout [ “MyTable” (MyTABLE) ; Animation: None ]

Perform Find [ Restore ] 

Go to Record/Request/Page [ First ]


# process record

# next

Go to Record/Request/Page [ Next ; Exit after last: On ]

End Loop


For privacy reasons, I removed the code to process the record and renamed the layout and file here. But otherwise the script contains a few of those loops and not all loops work well. Does the script look fine? Look and decide before you continue to read.


MapKit functions in MBS Plugins

Stefanie made a poster for our MapView functions in MBS FileMaker Plugin:

Learn more:
Available for Xojo via MBS Xojo MacFrameworks Plugin: MapKit classes.

20 year party moved to 2021

After long discussions we decide to move our 20 year party to the year 2021. Same location, same setup, but simply a year later.

In April 2020 our company will turn 20 years old and we celebrate a bit at home.
We'll plan to have a big party next year in Germany near our office with over 100 guests.

All people invited for this year will be asked to contact us in early 2021 whether they join the party in April 2021. We'll send new invitations next year to remind everyone.

The new date has the advantage that it's close to XDC 2021, so customers from America may extend their stay in Europe and join our party.

Please stay healthy and enjoy some time home with family.

New in the MBS FileMaker Plugin 10.1

In this article I want to introduce you to the new functions from the MBS FileMaker Plugin in version 10.1.

In the last plugin version we introduce the new JavaScript component. With those functions it is possible to use JavaScript without the help of a web viewer. In this version we have added some features, that simplify the work with JavaScript functions.

Times and dates in JavaScript are passed as floating pointer numbers. The function “JS.Now” returns us the number of milliseconds since the 1st January 1970. So we can determine the current time in combination with the “JS.TimeToDateComponents” function. This function returns us a JSON object with the individual specifications like year, month, day, hours, minutes, seconds, milliseconds, weekday, timezone and weekday

Here you see an example script:
Set Variable [ $JS ; Value: MBS( "JS.New" ) ]
Set Variable [ $time ; Value: MBS("JS.Now";$JS) ]
Set Variable [ $Res ; Value: MBS( "JS.TimeToDateComponents"; $JS;$time) ]
Set Variable [ $r ; Value: MBS( "JS.Free";$JS ) ]

If you combine this function with the “JS.UTCDateToTime” function you can get such a JSON of a FileMaker timestamp. “JS.UTCDateToTime” convert a FileMaker timestamp to the time format that the function “JS.Now” uses. Additionally there is a function that converts the millisecond output back to a FileMaker readable timestamp. This function is called JS.TimeToUTCDate.

We have also added counting functions that count the number of objects and global strings. In an empty JavaScript environment there are already about 1000 strings and about 400 objects. So if you want to find out how many objects and strings are added, you have to subtract the basic amounts. (more)

Trip to New York and Nashville cancelled

Due to the decision of the US government to ban us from coming to the USA (see press release), we cancel our trips to the USA.
  • For the FileMaker meeting on Thursday we'll try to join via WebEx.
  • The Xojo meeting in New York in the steak house could take place, but just without us.
  • For the Xojo.Connect conference we expect to find some solution. We'll probably provide our session as video on our website. Maybe we can hold it via video conferencing from today. This also offers the chance for Xojo Inc. to allow virtual attendance to the conference by streaming the sessions.
  • The Claris Engage conference is in August and we hope the flu season is over by then. But we will not book/pay a booth and tickets until we know the ban is liften and doesn't get extended till summer.

PS: The Xojo.Connect conference is cancelled. Also the PauseOnError in St. Louis for FileMaker developers is cancelled.

FileMaker Stammtisch Braunschweig (virtuell)

Heute findet der FileMaker Stammtisch Braunschweig virtuell statt via Zoom: Mittwoch, 11. März um 19:00 Uhr.

Die Chance für alle deutschsprachigen FileMaker Freunde drumherum diesmal live dabei zu sein.

Marcel Moré erzählt bestimmt was zum neuen Claris Connect und den anstehenden Konferenzen.
Vermutlich zeige ich was wir neues im MBS Plugin dieses Jahr haben mit diversen Beispielen (keine Folien).

Mehr Informationen: xing.com/events/filemaker-stammtisch-braunschweig-virtuell

Checking out the party location

We went to the party location for our 20 years Monkeybread Software event. Our mascot directly found a chair at the bar, but the bartender didn't show up that day.

In April 2020 our company will turn 20 years old and we celebrate.
We'll plan to have a big party here in Germany near our office with over 100 guests.

We hope for good weather and plan to do some barbecue and have a bouncy castle for the kids. They have a lovely terrasse for sitting outside, a big smoker for some great barbecue and be hired a DJ to entertain us.

If you like to join and you miss an invitation, you can contact us and ask whether your invitation got lost. Today we sent a few more invitations. In total something like 600 people invited, but most can't come. As people confirm they are coming, we'll add them to the guest list. If we run out of space, we may put people on the wait list. If you can't make it, please respond soon, so we don't need to contact you again later.

MBS FileMaker Plugin 10.1 - More than 6100 Functions In One Plugin

Nickenich, Germany - (March 10th, 2020) -- MonkeyBread Software today is pleased to announce MBS FileMaker Plugin 10.1 for macOS, iOS, Linux and Windows, the latest update to their product that is easily the most powerful plugin currently available for FileMaker Pro. As the leading database management solution for Windows, macOS, iOS and the web, the FileMaker Pro Integrated Development Environment supports a plugin architecture that can easily extend the feature set of the application. MBS FileMaker Plugin 10.1 has been updated and now includes over 6100 different functions, and the versatile plugin has gained more new functions:

Optimized syntax highlighting for MacOS to be faster on scrolling. You can now pick a font via preferences dialog or via SyntaxColoring functions to use a custom font for script workspace and calculation dialogs. The MBS Plugin now remembers column widths for themes, custom menus, data sources, security and privileges and value lists dialogs in FileMaker. We added new context menu entries for several lists in FileMaker to sort entries, e.g. to sort layouts or fields by name.

For Windows check the new WebView.PostURL function. Use it to load a website with GET or POST method and include POST data, e.g. to send a form directly and show resulting webpage. Pass additional headers with the request including a different user-agent, e.g. to pass a browser check which do not like Internet Explorer. Our preferences dialog for Windows can take your license key directly.

With SharedMemory functions you can store named values in memory shared with other applications on the computer. The content persists till a reboot or when you delete it and can be read even when FileMaker is quit in-between.

For Contacts we got CNContact.DeleteValue to delete a value and CNContact.Show to show a contact on screen. Please use CNContactPicker.Show to show a picker to pick a contact from your address book on MacOS and iOS.

In GraphicsMagick functions we can now extract thumbnail from EXIF data in a JPEG image. And you can check the font map used for annotating with text using GMImage.FontMap.

The CLGeocoder functions can now return result as JSON block. For Windows Media Foundation Player, you can now take screenshots and play the video/audio as loop. With DynaPDF you can now use the Windows certificate store to pick a certificate using a standard dialog when signing a PDF document. Using FM.SetDisableContextualMenus you can now disable context menus for FileMaker.

Our JavaScript functions got new functions to convert time to/from JavaScript. We got an automatic type detection mode for FileMaker XML on the clipboard. Our styled text handling on MacOS can now handle strikethrough attribute. Using ScriptWorkspace.StyledScriptText and ScriptWorkspace.CopyScriptText you can automate to save scripts.

Finally we updated to newer Plugin SDK, CURL version 7.69.0, DynaPDF to, SQLAPI to 5.0.5 and SQLite to 3.31.0.

See release notes for a complete list of changes.

Neues MBS FileMaker Plugin 10.1 - Über 6100 Funktionen in einem Plugin

10. März 2020 - Monkeybread Software veröffentlicht heute das MBS Plugin für FileMaker in Version 10.1, mit inzwischen über 6100 Funktionen eines der größten FileMaker Plugins überhaupt. Hier einige der Neuerungen:

Wir haben die Syntaxeinfärbung für das Scrollen unter MacOS optimiert. Sie können über den Voreinstellungsdialog oder über die SyntaxColoring Funktionen eine eigene Schrift auswählen, die das MBS Plugin dann für Berechnungen oder Skripte verwendet. Unser Plugin kann sich jetzt die Spaltenbreite für mehr Listen merken bei externe Datenquellen, Designs, Eigene Menü, Sicherheit und Wertelisten. Über einen neuen Eintrag im Kontextmenü können Sie mehrere Listen in FileMaker automatisch sortieren lassen, z.B. die Liste der Layouts oder Felder.

Für Windows probieren Sie bitte die WebView.PostURL Funktion um eine Webseite mit GET oder POST aufzurufen. Übergeben Sie optional POST Daten, z.B. um ein Formular abzuschicken und direkt das Ergebnis zu sehen. Mit zusätzlichen Header Einträgen können Sie beispielsweise einen anderen User-Agent angeben. Damit überlisten Sie die ein oder andere Browser Überprüfung, die vielleicht den Internet Explorer nicht mag. Für Windows haben wir einen Voreinstellungsdialog um direkt die Lizenzdaten einzugeben.

Mit den neuen SharedMemory Funktionen können Sie Daten im Arbeitsspeicher ablegen und mit anderen Programmen austauschen. Der Inhalt bleibt auch im Arbeitsspeicher, wenn FileMaker zwischendurch beendet wird.

Für Kontakte haben wir die CNContact.DeleteValue Funktion um leichter Werte zu löschen. Nutzen Sie CNContact.Show um einen Kontakt auf dem Bildschirm anzuzeigen. Mit CNContactPicker.Show rufen Sie, für MacOS und iOS,einen Dialog auf um einen Kontakt aus dem Adressbuch zu wählen.

Die GraphicsMagick Funktionen können ein Vorschaubild aus den EXIF Daten eines JPEG Bildes laden. Sie können die Schriften Liste mit GMImage.FontMap einsehen, die wir für Annotationen verwenden.

Für DynaPDF können Sie jetzt per Dialog aus dem Windows Certificate Store ein Zertifikat zum Signieren eines PDF Dokumentes auswählen. Per FM.SetDisableContextualMenus können Sie Kontextmenüs für FileMaker deaktivieren.

Unsere JavaScript Funktionen können jetzt Zeitwerte von/nach JavaScript konvertieren. Für unsere XML Funktionen, betreffend FileMaker Daten in der Zwischenablage, haben wir jetzt die automatische Erkennung von Inhalt eingebaut. Die Funktionen für Texte mit Stilelementen für MacOS unterstützen “durchgestrichen” als Attribut. Mit ScriptWorkspace.StyledScriptText und ScriptWorkspace.CopyScriptText können Sie automatisiert den Text des aktuellen Skripts abfragen. Die CLGeocoder Funktionen können das Ergebnis jetzt als JSON Block zurück geben. Beim Windows Media Foundation Player können Sie jetzt, vom aktuell gezeigten Bild, Fotos erstellenund den Film oder Ton als Schleife laufen lassen.

Außerdem haben wir das Plugin SDK aktualisiert, CURL auf Version 7.69.0, DynaPDF auf, SQLAPI auf 5.0.5 und SQLite auf 3.31.0.

Alle Änderungen in den Release Notes.

Sort Layouts and Fields in FileMaker

Have you tried the sort command in our contextual menu in FileMaker for MacOS to sort various lists in FileMaker?

See how to sort layouts:

and sort field list:

Coming soon in 10.1 release, which is currently in beta test.

New York FileMaker Meeting

Please join the March meeting for the New York FileMaker Pro Developers' Group. We'll join and present about what's new in MBS Plugin.

Please save the date: 19th March 2020

Times: 5:30 pm Meet & Greet, 6:00 pm – 8:00pm Presentation

We'll have a presentation to whatever is new in the MBS FileMaker Plugin 2020. And Vincenzo Menanno presents about InspectorPro.
Looking forward to see a few FileMaker developers there!

See announcement here: Meeting Thursday, March 19, 2020 at Rockefeller Research Labs, Sloan Kettering Institute.

If you are interested in private time for consulting, training or discussion MBS or FileMaker topics, we can of course schedule a meeting. Please contact me directly interested.

MBS FileMaker Plugin, version 10.1pr7

New in this prerelease of version 10.1 of the MBS FileMaker Plugin: Download at monkeybreadsoftware.de/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.

Permanent column widths for FileMaker

Did you notice that FileMaker does not remember what column width you set for several dialogs?

We had this feature for some time for 3 dialogs: fields, tables and layouts. Today we extend this to include value lists, themes, custom menus, custom functions, external data sources, security and privileges.

This feature will be included in next MBS Plugin prerelease. If you like to try it now, email us.

MBS FileMaker Plugin, version 10.1pr6

New in this prerelease of version 10.1 of the MBS FileMaker Plugin: Download at monkeybreadsoftware.de/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.

20 Years Monkeybread Software Party

This year in April our company will turn 20 years old.
We'll plan to have a big party here in Germany near our office with over 100 guests.

We hope for good weather and look forward to get the bouncer castle we ever rented.

If you like to join and you miss an invitation, you can contact us and ask whether your invitation got lost. Today we sent a few more invitations. In total something like 600 people invited, but most can't come.

As people confirm they are coming, we'll add them to the guest list. If we run out of space, we may put people on the wait list. If you can't make it, please respond soon, so we don't need to contact you again later.


Jun 2020
May 2020
Apr 2020
Mar 2020
Feb 2020
Jan 2020
Dec 2019
Nov 2019
Oct 2019
Sep 2019
Aug 2019
Jul 2019
Jun 2019
May 2019
Apr 2019
Mar 2019
Feb 2019
Jan 2019
Dec 2018
Nov 2018
Oct 2018
Sep 2018
Aug 2018
Jul 2018
Jun 2018
May 2018
Apr 2018
Mar 2018
Feb 2018
Jan 2018
Dec 2017
Nov 2017
Oct 2017
Sep 2017
Aug 2017
Jul 2017
Jun 2017
May 2017
Apr 2017
Mar 2017
Feb 2017
Jan 2017
Dec 2016
Nov 2016
Oct 2016
Sep 2016
Aug 2016
Jul 2016
Jun 2016
May 2016
Apr 2016
Mar 2016
Feb 2016
Jan 2016
Dec 2015
Nov 2015
Oct 2015
Sep 2015
Aug 2015
Jul 2015
Jun 2015
May 2015
Apr 2015
Mar 2015
Feb 2015
Jan 2015
Dec 2014
Nov 2014
Oct 2014
Sep 2014
Aug 2014
Jul 2014
Jun 2014
May 2014
Apr 2014
Mar 2014
Feb 2014
Jan 2014
Dec 2013
Nov 2013
Oct 2013
Sep 2013
Aug 2013
Jul 2013
Jun 2013
May 2013
Apr 2013
Mar 2013
Feb 2013
Jan 2013
Dec 2012
Nov 2012
Oct 2012
Sep 2012
Aug 2012
Jul 2012
Jun 2012
May 2012
Apr 2012
Mar 2012
Feb 2012
Jan 2012
Dec 2011
Nov 2011
Oct 2011
Sep 2011
Aug 2011
Jul 2011
Jun 2011
May 2011
Apr 2011
Mar 2011
Feb 2011
Jan 2011
Dec 2010
Nov 2010
Oct 2010
Sep 2010
Aug 2010
Jul 2010
Jun 2010
May 2010
Apr 2010
Mar 2010
Feb 2010
Jan 2010
Dec 2009
Nov 2009
Oct 2009
Sep 2009
Aug 2009
Jul 2009
Apr 2009
Mar 2009
Feb 2009
Dec 2008
Nov 2008
Oct 2008
Aug 2008
May 2008
Apr 2008
Mar 2008
Feb 2008