Xojo Conferences
Our Blog, Filemaker only, Xojo only, Archive (older)

Follow us on Twitter, Xing, LinkedIn or Facebook.

WWDC 2019

Today I got a notice from Apple that I won their ticket lottery and got a ticket for WWDC 2019 in San José.

I am looking forward to get into their keynote presentation, get into a few interesting session and meet a few of the engineer who wrote the frameworks I use everyday.

Anyone else coming to WWDC?

This is my 5th attempt to get a ticket for WWDC, so I am happy to get there this year.

I'll certainly add a few extra days to do the sight seeing tour to Apple's two campuses. Maybe I can even stop by FileMaker Inc. and take a look where they do all the development work?

If people are interested we could even make some kind of local meet-up with people from San Francisco or San José area to talk about FileMaker and Xojo?

Replacing plugin on FileMaker Server

Today we run into a little issue with FileMaker Server and our plugin. We have a server with MacOS and our MBS FileMaker Plugin installed. Now we replaced the plugin file with a new version and want to the newer version with the server. But how?

We started in Admin Console for FileMaker and disabled MBS Plugin. Enabled it again and well, the old plugin is back, even if newer file is in Extensions folder!
Same when we disable plugins for script engine. When we enable again, the same plugin becomes active. Seems like FileMaker Script Engine doesn't really try to unload and load again the plugin.

What works is to use Terminal and the command "fmsadmin restart fmse". This will restart the scripting engine and consequently end all running scripts. But it will reload the plugin from disk and you get the new version.
Alternatively you can of course just restart your server machine or restart the whole FileMaker Server, but that would kill all connections.

By the way, the console app is used to show /Library/FileMaker Server/Logs/stderr as this is a place where the log messages from MBS Plugin show up. Our plugin writes a message on startup as well as any requested trace messages.

CURL birthday and conference

Today CURL library and command line tool turns 21 years old. It's a long time in software business and a great success with curl on nearly every computer device on earth as it ships for example with MacOS, Google Chrome, Linux, Android and others.

Since January 2007 and the MBS Xojo Plugin 7.0, we do include CURL for up- and download via ftp/http.

Since January 2012 and the MBS FileMaker Plugin 2.5, we include CURL functions for FileMaker.

And as far as I see, FileMaker Inc. added CURL right to the database engine with version 11 of FileMaker, but only added CURL options for Insert From URL script step with version 16.

See blog post from Daniel Stenberg.

For end of March we have the CURL conference on the agenda in Prague. Please join it if you like to learn more about CURL. See wiki page.

Interested in a meeting for FileMaker or Xojo?
If you are in Prague and like to talk with me, please contact me soon.

SQLabs new website and products

Marco Bambini and his team worked hard on an update to their products CubeSQL Server, SQLiteManager and SQLiteDoctor.

During the past months we worked hard in order to renew the look and the functionalities of SQLabs and of all its products. We are extremely proud to announce a complete website renovation and products updates.

To celebrate the new updates we are offering a time limited, huge discount for all our products.

Read the details here.

MBS Xojo SQL Plugin and SQL Functions in MBS FileMaker Plugin supports CubeSQL Server and SQLite beside a dozen other database types.

Xojo Enterprise is now Xojo Pro Plus

Xojo Inc. changed the name of the license option called Enterprise to Xojo Pro Plus.

As you see, it includes Top Priority Support, so you get quicker answers from Xojo's support staff. Your messages and feedback cases should get priority to be read first. Fast Fixes are included, so your problems are not just read, but also bugs fixed and workarounds found to help your app to work. 2X Activations allows you to install Xojo on up to 6 computers or virtual machines. This is very handy to install Xojo Pro on Linux, MacOS and Windows VMs and activate Xojo there, so you can build and test easily on each machine.

Anyone who invests into Xojo Pro Plus licenses, should also consider to go to the Xojo Developer Conferences and talk directly to Xojo staff. Geoff Perlman will be at the conferences in Miami in May and in Cologne in October.

How to Convert a PDF document to a PDF/A

A lot of companies need PDF/A for long term archiving. PDF/A should make a barrier-free accessible documents possible after 100 years. Thats because of the tree structure of the elements, which makes it possible to open the document in the future with a screen reader application and it looks the same like 100 years ago when it was created. All fonts and color profiles are embedded to the PDF Document, so no external dependencies cause trouble. 

I want to show how you can do it with our MBS Plugin in FileMaker and DynaPDF.

In our example layout we have two container. One with the name Input for the PDF to process and one with the name Output for the result. You can insert a PDF file by putting your document into the Input container via Drag & Drop. We add a button which calls the following script:


Track Line with Data Labels Retina

We like to show you this example project included with MBS Xojo ChartDirector Plugin. This example shows several features of ChartDirector and our plugin how to:
  • create a chart, here with lines.
  • use dates for an axis
  • use several data sets on a layer
  • use gradients for background color
  • handle mouse over for tracking
  • how to dynamically draw a layer on top fo the chart
  • how to do 2x resolution for support for HighDPI and Retina screens
  • how to handle fonts and show text on linux
  • how to format a label with custom font and formatting.
Check the example. You may need to enable HiDPI support option in shared build settings. Than you can build the project for Mac, Windows and Linux and it works nice in 32 and 64 bit.


MBS Edition of the Xojo Developer Magazine

In 2010 we collected a few MBS Plugin related articles into a special edition of the Xojo Developer Magazine (formally REALbasic Developer Magazine).

Third-Party Tools: Updater Kit
Christian demonstrates his MBS Updater Kit plugin which adds crossplatform self-updating capability to your REALbasic applications.
Easy Charts and Graphs (Part 1)
Christian shows how easy it is to create amazing charts and graphs using his ChartDirector plugin for REALbasic.
Easy Charts and Graphs (Part 2)
Christian shows how easy it is to create amazing charts and graphs using his ChartDirector plugin for REALbasic.
Making RB Plugins
Have you ever wondered how to make a plugin for REALbasic? Christian adapts his talk from the 2009 RB Summit and provides us with an overview of the process.
RB Summit 2009
In September Geoffrey attended the RB Summit in Boulder, Colorado, and he provides us with his report.

It's still a great way to read the articles about ChartDirector. We plan a few new articles this year, but this free PDF should be in everyone's Xojo library. Download here

Adding route planing for MapView in FileMaker

We'll add new function for next plugin release to plan a route for MapView functions:

So when you need to show a route on a map or get the steps, you can use our new MapView.PlanRoute function. Depending on the options, it can show the route, alternative routes as lines on the map, the start and end point as pins. Optionally we can zoom to show the route centered on the map. We can also return the information for the route as JSON blocks, so you can see the locations we found, the steps of the routes and if needed all the points on the map on the route.

Coming soon for Mac and iOS in MBS FileMaker Plugin.

One week left for special hotel rate for XDC 2019

Dana just reminded everyone that the hotel rate ends soon:

There is still time to plan your trip to Miami and we are seeing great prices on flights (Roundtrip from Boston: $124, Denver $130, Raleigh $179, Chicago $161, Austin $179, San Francisco $236, Salt Lake City $201, Portland $209, Atlanta $118, London $407, Barcelona $572, Paris $678, etc. ! Our hotel room block (and amazing room rate of $149) only lasts through Monday, March 25th, so book your hotel room ASAP.

May 1-3, 2019 | Miami, Florida | Marriott Biscayne Bay
Sessions | Networking | Fun

Watch our 2018 highlights video to hear from attendees what it's like!

XDC Home   Sessions List   Agenda  Register  

The hotel offers the same rooms regularly for about $269 per night, so the rate is very good!

If you like to attend a conference, there is a the bigger official Xojo Developer Conference in May 2019 in Miami and our European Xojo conference in Cologne in October 2019.

New testimonial from a client

Today we got an email with this nice text:

I want to congratulate you again on such a great plugin. MBS FileMaker Plugin has transformed our solutions into no-compromise tools. It gives a way to answer when we say... "Could that be possible?"... and yes it is when we employ the plugin. Also what I love is I don't have to employ many plugins into a solution. It has all things considered and provides each one thoroughly. I especially love the extras stuff it can do with images and containers. I used to use command line tools with Image Magick and Graphics Magic and hope that I could get FileMaker to play nice. However, your plugin has streamlined the process. Thanks again ☺ Chris Johnston

Thanks Chris for your compliments and see you at the next conference!

Create PDF from scanned images and skip blank pages

When you scan images from a flatbed scanner or document feeder, you may get a collection of image files, one for each page. Than you may want to join them as a big PDF document and you may prefer skipping white pages.

Recently I wrote a script for this task using MBS FileMaker Plugin and DynaPDF.

In my script I scan the pages with our WIA.Scan function and get the list of picture file paths from WIA.Images function. The path is stored at $paths variable in the sample script below. In the following loop I use GMImage.NewFromFile function to load the image file into memory and get back the reference number for the image. This image is converted (if necessary) to the RGB colorspace with GMImage.SetType function. This is a necessary condition for the GMImage.AveragePixelValue function. It calculates the average pixel value and depending of the image content it is more black (0.0) or white (1.0). The function also need the dimensions of the region that should be tested. I want to test the whole page and simply pass the whole image size, queried via GMImage.GetWidth and GMImage.GetHeight functions. 


A perfect white page would have an average pixel value of 1.0. But scanners usually do not scan perfect white pages, because dust pollutes the scan result. So we need to test against a little bit smaller value like 0.999. 


Xojo developer available for hire

We got notice from Norman, that he left Xojo Inc. and is now looking for new projects or jobs related to Xojo:

Norm Palardy, formerly Senior Developer at Xojo Inc., has become available if anyone is looking for additional resources to add to their development efforts.
After spending nearly 11 years at Xojo he is now seeking other opportunities to work with talented engineers and product specialists to make those designs come to life.

Anyone wishing to contact him can get in touch with him at npalardy at great-white-software.com

You may have met at the various Xojo conferences, read his articles in the Xojo Developer Magazine and he is one of the top posters on the Xojo forums. He knows Xojo in-and-out and could certainly help to move a project forward.

MBS FileMaker Plugin 9.1 - More than 5700 Functions In One Plugin

Nickenich, Germany - (March 12th, 2019) -- MonkeyBread Software today is pleased to announce MBS FileMaker Plugin 9.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 9.1 has been updated and now includes over 5700 different functions, and the versatile plugin has gained more new functions:

For iOS we got new DocumentPicker functions to show the standard panel to import or open files. You can specify file types and get a script trigged when the choice is made.

When you edit a layout in FileMaker on MacOS, you may notice that the contextual menu to select object style is not sorted. The MBS Plugin can now sort the contextual menu entries alphabetically for you. For the export dialog, you can leave your mouse over a field and our plugin can show via tooltip what type a field has.

If users ask you to implement scrolling though records via mouse wheel, please check the FM.MouseWheelScriptTrigger function. You can get a script triggered to move through records for both MacOS and Windows.

Our AVRecorder functions got an upgrade for Windows, where you can now set the video encoder to use. You can show the standard configure dialog and setup streams, camera controls, and video compression configuration.

DynaPDF got functions to handle optional content in PDF documents (layers). You can query layers, show or hide them and save the new PDF. Table cells can have an action attached for mouse clicks. When printing PDFs with DynaPDF.Print function, you can provide a maximum resolution. The DynaPDF.ReplacePattern function can change text color and WriteFText functions can run in plain text mode.

This version includes three new remarkable example databases:
  1. IMAP Email shows how import emails via IMAP from server into FileMaker and even shows a preview of the email.
  2. Events Sync shows how to synchronizes events in FileMaker with the Calendar database for MacOS.
  3. Scan with WIA to PDF shows how to scan images on Windows from your flatbed or document feeder scanner and convert them to a PDF/A.

To help scanning, you can now use ImageCapture.PDF function to query a PDF document with the images scanned on MacOS. For Windows the WIA.Images provides a list of image files to further process them.

As Apple deprecated older UserNotification functions, we got new UNNotification functions for MacOS 10.14 and newer as well as iOS 10 and newer.

With PKCS7 functions, you can now read p7m files and extract content and certificates. The X509.Read functions read binary files and Socket.Listen can now use a bigger backlog. For our SQL functions in FileMaker, we got new aggregate functions FM.SQL.Min, FM.SQL.Max, FM.SQL.Avg and FM.SQL.Sum.

Finally we upgraded CURL library to version 7.64.0, DynaPDF to version, SQLAPI to version 4.2.5 and SQLite to version 3.27.1.

See release notes for a complete list of changes. (more)

MonkeyBread Software Releases the MBS Xojo Plugins in version 19.1

Nickenich, Germany - (March 12th, 2019) -- MonkeyBread Software today is pleased to announce MBS Xojo Plugins 19.1 for macOS, Linux and Windows, the latest update to their product that is easily the most powerful plugin collection currently available for Xojo. MBS Xojo Plugins have been updated and now includes over 2400 classes and 64000 documented features, and the versatile plugins have gained more new functions:

As you may know we have an existing BigNumberMBS class which provides a 320-bit floating point number. The new LargeNumberMBS class adds an integer with up to 4128 bits in size. That is enough bits for 1200 digits. You can generate big prime numbers, use normal math operators and bitwise operations.

Our DirectShow classes for recording video on Windows got upgraded. We now have a DirectShowAMVideoCompressionMBS class to configure video compression settings. Several classes got a ShowPropertyDialog method to show the standard configure dialog, so you can setup streams, camera controls, and video compression.

For SceneKit we added 28 new classes to handle basic geometry in 3D scenes, add actions, constrains and materials. We got a few nice example projects to show you how to construct items in 3D space and display them to the user.

The older NSUserNotificationMBS class got deprecated, so we added UNNotificationMBS and related classes for notifications on MacOS 10.14 or newer. This includes actions in the notifications, so user can respond directly.

For GraphicsMagick we got a new class to convert images threaded: GMConvertMBS and GM16ConvertMBS classes have properties for which image to load, what effect to apply and where to save it. As this works with preemptive threads, you can do various image operations in parallel to batch process a lot of images. Similar CGImageSourceMBS.CreateThumbnailMT method can create thumbnails using MacOS frameworks threaded.

We upgraded NSSpellCheckerMBS class for MacOS. The new NSTextCheckingResultMBS class provides details on all the issues found. This includes both grammar and spelling errors.

The new TextConverterMBS class converts between various text encodings, we got new UTF-8 related functions for StringHandleMBS class, we upgraded StoreKit classes for MacOS 10.14 with new subscription methods. For Linux we got a new LinuxIconMBS module to query file icons. For Windows we can now query all hard linked files to a given file path and TimerMBS class got an enabled property.

For SQLErrorExceptionMBS we now provide the SQL string causing the error, JSONMBS class got a new delete item method and PictureMBS has a new FilePath property for the temporary file used for memory mapping. NSColorSpaceMBS class can now tell you the file for a colorspace, PDFDocumentMBS class can now write file with options and TiffPictureMBS can query scanlines scaled down.

Finally we updated CURL to version 7.64.0, DynaPDF to version, SQLAPI to version 4.2.5 and SQLite to version 3.27.1.

See release notes for a complete list of changes. (more)

Neues MBS FileMaker Plugin 9.1

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

Für iOS haben wir neue DocumentPicker Funktionen um den Standarddialog für Import bzw. Öffnen anzuzeigen. Sie können den Dateityp festlegen und bekommen einen Skriptaufruf, wenn der Benutzer fertig ist.

Wenn Sie ein Layout in FileMaker unter MacOS bearbeiten, ist Ihnen vielleicht aufgefallen, dass die Objektstile im Kontextmenü nicht sortiert sind. Das MBS Plugin sortiert diese Einträge jetzt alphabetisch für Sie. Im Export Dialog können Sie die Maus über einen Feldnamen halten und in einem keinen Infofenster erscheinen Informationen zum Feld. Unser Plugin zeigt Ihnen den Namen vom Feld, der Tabelle und ganz wichtig den Typ des Feldes an.

Wenn ein Benutzer Sie danach fragt, ob man per Mausrad durch die Datensätze navigieren kann, dann schauen Sie sich bitte die FM.MouseWheelScriptTrigger Funktion an. Sie bekommen einen Skriptaufruf für MacOS und Windows bei Benutzung des Mausrades. Ihr Skript kann dann zum nächsten Datensatz weiter blättern.

Unsere AVRecorder Funktionen wurden für Windows überarbeitet. Sie können jetzt den Videokompressor festlegen. Außerdem können Sie die Standarddialoge von Windows anzeigen um die Streams, Kamera und die Kompression zu konfigurieren.

DynaPDF hat einige neuen Funktionen um optionale Inhalte in PDF Dokumenten (Ebenen) zu verwalten. Sie können abfragen welche Ebenen es gibt, einzelne ein/ausblenden und das PDF speichern. Zellen in Tabellen können jetzt Aktionen haben und auf Mausklicks reagieren. Wenn Sie mit DynaPDF.Print ein PDF ausdrucken, können Sie die Auflösung beschränken und mit DynaPDF.ReplacePattern nicht nur den Text, sondern auch die Farbe ändern. WriteFText kann Text jetzt mit oder ohne Formatierung ausgeben.

Diese Version beinhaltet auch drei bemerkenswerte Beispieldatenbanken:
  1. IMAP Email zeigt Ihnen, wie Sie Emails von einem IMAP Server in FileMaker importieren und anzeigen.
  2. Events Sync zeigt wie Sie Termine in FileMaker mit dem Kalender von MacOS synchronisieren.
  3. Scan with WIA to PDF zeigt Ihnen wie man bei Windows Bilder einscannt und dann zu einem PDF zusammenfügt.
Zum Scannen haben wir ein neue ImageCapture.PDF Funktion um alle Bilder vom Scan als ein PDF Dokument zurück zu geben. Für Windows gibt die WIA.Images Funktion eine Liste aller Bilder zum Weiterverarbeiten.

Da Apple die älteren Klassen für Benachrichtigungen (UserNotification Funktionen) als veraltet markiert hat, bieten wir mit dieser Version die neueren UNNotification Funktionen für MacOS 10.14 und neuer sowie iOS 10.0 und neuer an.

Mit den PKCS7 Funktionen können Sie jetzt p7m Dateien lesen und den Inhalt und die Zertifikate auslesen. Die X509.Read Funktionen lesen jetzt auch Binäre Zertifikate und die Socket.Listen Funktion kann jetzt mehr Sockets annehmen. Für die SQL Funktionen in FileMaker haben wir neue Aggregierungsfunktionen FM.SQL.Min, FM.SQL.Max, FM.SQL.Avg und FM.SQL.Sum.

Außerdem haben wir die CURL Bibliothek auf Version 7.64.0, DynaPDF auf Version, SQLAPI auf Version 4.2.5 und SQLite auf Version 3.27.1 aktualisiert.

Alle Änderungen in den Release Notes. (more)

MBS Xojo Plugins, version 19.1pr7

New in this prerelease of the 19.1 plugins: Download: monkeybreadsoftware.com/xojo/download/plugin/Prerelease/.
Or ask us to be added to our shared Dropbox folder.

MBS FileMaker Plugin, version 9.1pr7

New in this prerelease of version 9.1 of the MBS FileMaker Plugin:
  • Updated DynaPDF to version
  • Changed GraphicsMagick to detect installed fonts at runtime for MacOS instead of hard coded list.
  • Fixed problem with Events.Reset function.
  • Fixed bug in handling 16-bit color for GraphicsMagick, which affected the trim and replace color examples.
  • Fixed an issue with WebViewer not found for Popover controls. (bug from pr1)
Download at monkeybreadsoftware.de/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.

Send text message from FileMaker via iMessage

A client recently asked how to send text messages (SMS) via iMessage. Instead of using a web service of some provider, he only has to occasionally send a few messages automated over his iPhone. So we got the following AppleScript for him:


property targetPhone : ""

property targetMessage : ""


on run

tell application "Messages"

set targetService to 1st service whose service type = iMessage

set targetBuddy to buddy targetPhone of targetService

send targetMessage to targetBuddy

end tell

end run


This script has two properties for the phone number (or email) and the message to send. The script asks Messages app on MacOS for the first service for iMessage and for the buddy with the given phone number. Than it sends a message to the buddy.


Extra sight seeing for our MBS Xojo Conference in Cologne

For the MBS Xojo Conference in Europe, we may have something special for people staying a bit longer. Especially our guests from the USA are probably coming for a week, so we organize an extra sight seeing special.

For 22nd October, we'll organize a guided private tour to the roof of the cathedral (or with bad weather to the underground or backstage parts). We can invite up to 15 people for the tour. Let us know if you are interested to join us.

Participants need to be 16 year old. They do have a cargo lift, but if it's not available or broken that day, we may need to take the 240 steps to walk up. Please sign up for the conference, make your hotel reservation and let us know whether you have time. Same evening we may go for dinner after the tour. Start time is probably around 15:30 o'clock at the hotel.

Older blog entries:

2019-03-08 Login in FileMaker web viewer if needed
2019-03-08 Read patient name from Swiss Health Card
2019-03-07 Tooltips for the FileMaker export dialog
2019-03-06 MBS Xojo Plugins, version 19.1pr6
2019-03-06 MBS FileMaker Plugin, version 9.1pr6
2019-03-04 xDev 17.2 Issue
2019-03-04 Free tickets for students for MBS Xojo Conference in Cologne
2019-03-04 Dialogs made in FileMaker
2019-03-03 Simple load balancer for Xojo Web app
2019-03-03 Newer IMAP Email example for FileMaker
2019-03-01 MBS FileMaker Plugin, version 9.1pr5
2019-03-01 MBS Xojo Plugins, version 19.1pr5
2019-03-01 Sorted object style contextual menu in FileMaker
2019-02-28 Large integer numbers in Xojo
2019-02-28 Let CURL handle cookie list
2019-02-25 MBS Workshop in Hamburg bei der FileMaker Konferenz
2019-02-25 MBS Xojo Plugins, version 19.1pr4
2019-02-25 MBS FileMaker Plugin, version 9.1pr4
2019-02-25 Eight months till European MBS Xojo Conference 2019 in Cologne
2019-02-24 New DirectShow dialogs


Mar 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
XML: RSS Feed XML: Atom Feed