Reading Belgian national identity card

As you may know all Belgians have an identify card. We recently added classes for CryptoTokenKit framework on Mac and translated a sample project from Swift to Xojo to read those card. Works very well to get basic information, address details and the picture of the person.

The same could have been done with our SmartCard classes. And as those classes use the PCSC interface on MacOS, Windows and Linux you could even get it done cross platform.

But for newer development on MacOS Apple prefers to use their own frameworks, so we got the CryptoTokenKit plugin part in the Mac64bit plugin.

MBS Booth at FileMaker Konferenz in Malbun

For Malbun we brought our usual posters and decorated a table with papers:

Please come by to say hello, get a pen, some gummy bears and the cool MBS pocket knife (okay for air travel).
The coupon code for our web shop with 20% off from all licenses is FMK2018 this year and valid til end of October.

Watch our MBS Plugin presentation here from DevCon.

Grüße aus Malbun

Diese Woche startet hier in Malbun, Liechtenstein die deutschsprachige FileMaker Konferenz mit Teilnehmern aus mindestens fünf Ländern. Ich hoffe ihr kommt nicht nur zur Konferenz, sondern nehmt euch auch einen extra Tag frei um die schöne Berglandschaft zu genießen.

Zu Fuß oder per Seilbahn kann man auf den Berg Sareis kommen und die Aussicht über das Tal genießen. Der Blick geht weit nach Österreich und die Schweiz rüber. Ab der Kapelle in Malbun kann man über den geschotterten Weg in ca. 4 km bis zum Café an der Bergspitze laufen mit moderater Steigung.

FileMaker Conferences

We are looking forward to two weeks with conferences. As you may know there are seven FileMaker conferences this year in Europe.

I visit the German conference in Malbun (Liechtenstein), the Scandinavian conference in Gothenburg (Sweden) and the English conference in London (United Kingdom) this year. And for the German conference, Stefanie will join me to help on the booth and with our training day on Wednesday.

See you there!

Greetings to the people in Gent, which start the FM Summit today.

URLs without UserName and Password please

With last plugin release we enabled the option for CURL to disallow you passing user name and password. As URLs are sent to proxy and may be logged at the web servers, we prefer to not include credentials in the URL. And if you use the email address for user name, the name in the URL never worked.

So for the future, please separate them and put the credentials in the relevant options:

In FileMaker:

Set Variable [ $curl ; Value: MBS("CURL.New") ]
Set Variable [ $r ; Value: MBS("CURL.SetOptionURL"; $curl; $URL) ]
Set Variable [ $r ; Value: MBS("CURL.SetOptionUsername"; $curl; "xxx") ]
Set Variable [ $r ; Value: MBS("CURL.SetOptionPassword"; $curl; "yyy") ]

In Xojo:

dim curl as new CURLSMBS
curl.OptionURL = URL
curl.OptionUserName = "xxx"
curl.OptionPassword = "yyy"

If you still use URLs with username and password, please move to passing them with the username and password properties.

If you really can't change your solution, you can still use CURL.SetOptionDisallowUserNameInURL (FileMaker) and OptionDisallowUserNameInURL property in CURLSMBS/CURLNMBS and CURLMBS classes (Xojo) to enable username and password in URLs.

MBS Xojo Plugins, version 18.5pr2

New in this prerelease of the 18.4 plugins:
  • Updated DynaPDF to version
  • Fixed issues with printer settings for DynaPDFMBS print methods on Windows.
  • Improved RemoveAccentsMBS to include greece characters.
  • Changed CDBaseChartMBS.MakeChartPicture to set resolution of picture to ScaleFactor * 72 dpi.
  • Changed SQLDatabaseMBS to return RecordSet where you can query names of columns even if you have no rows.
  • Fixed bug in PaletteCalculatorMBS.GetNearestIndexOfColor with color parameter.
  • Fixed FinderUpdateMBS for 64-bit to work by calling internally NSWorkSpaceMBS.noteFileSystemChanged.
  • Added more NSErrorMBS methods to create custom error objects.
  • Fixed a bug to avoid crash with RegisterMBSPlugins with wrong license key.
  • Fixed bug in SSL initialization introduced in pr1.
  • Updated to zlib 1.2.11.
  • Fixed bug in DynaPDF print functions (made white pages) and fixed example (printed only one page).
  • Fixed bugs in WindowsMidiOutputMBS and WindowsMidiInputMBS for 64-bit.
  • Fixed SystemInformationMBS.SystemFont for Mac.
  • Added new plugin part to Mac64bit plugin for CryptoTokenKit from Apple.
  • Fixed problem with SystemInformationMBS.Computername and MBS.ComputerName returning extra characters.
Or ask us to be added to our shared Dropbox folder.

MBS FileMaker Plugin, version 8.5pr2

New in this prerelease of version 8.5 of the MBS FileMaker Plugin: Download at or ask for being added to the dropbox shared folder.

FileMaker Promotion: Buy one, give one

FileMaker currently runs a promotion till 20th December 2018 where you can buy a FileMaker license and receive a second one to give to a friend.

in German here at website.

In English here in the FileMaker Store:

Please check conditions for details.

CURL Up 2019

The CURL conference for 2019 is announced:

curl up 2019 will take place in Prague, the Czech Republic the last weekend of March.

When: March 29-31, 2019
Where: Prague, Czech Republic
Venue: Charles University

For details, please check the website.

Maybe we can arrange some developer meeting with our Xojo and FileMaker clients, too?

Email Script for FileMaker

Today a client sent me his email script using our plugin. It is based on one of our examples, but got quite a few enhancements.

First like with every professional developer, you see a few comments about what it does and where data is coming from. Also changes are logged at the end. Part of the standard setup of the methods is to disallow user abort and activate error capture to avoid error dialogs.

All the configuration details are not part of the script, but come from a configuration table. For tracing the soluton, a trace script is called to log what happens. Results from sending emails are stored in the table, so you can check for each email whether it worked and what the error message is. Please read the script below:


Adding Drag and Drop receiver to a layout

One of our clients asked how to add a Drag & Drop area on the layout to receive file drops.


Well, the obvious answer is to copy everything from DragTest Windows.fmp12 to their solution and enjoy it for both Mac & Windows. But it's not that simple as you need to know where to look. So here a step by step solution.


Before you start, please make sure you have a recent plugin version. The Drag & Drop features for Windows were introduced in MBS FileMaker Plugin 8.1, but we got bug fixes later, so best is to use current 8.4 release.


Add placeholder rectangle


First in our DragTest Windows.fmp12 file is a picture used for the drop area. The picture is there twice. Once assigned to the rectangle in the layout and second in a global field. So add the DropLogo field to the layout and you can export the image named "Drop-Files-Here-extra.jpg".


In your solution, you may find a layout where you like people to drop stuff. This should be a layout where you would enable Drop in one trigger and than disable it when the user leaves the layout.


To the layout, we add a rectangle area in the header for the drop. Our image is 500 x 224, so our rectangle should be 250 x 112 points big to use 2x image for sharp picture on high resolution screens. In the inspector for fill option, please select picture and select the image file. For the aspect ratio, please choose "Scale to Fit" below. In the first inspector tab, please give the rectangle a name, e.g. "drop".


Please add a global container image named DropLogo. Put it on the layout and import the image here, too. After the import, you can remove the global field from the layout. We need this image later in the script. It's a good idea to actually have two images, one of drop off and one for drop on. This way you can see whether the plugin is working.



Call stored procedures with output parameters

As you know MBS Xojo SQL Plugin can execute stored procedures. For that you normally just pass the name of the stored procedure instead of a SQL command. The plugin than queries the details for the stored procedure like the input and output parameters. You can set input parameters and call execute. After you got all the result sets read, the last data package from the server brings the return code and the output parameter values. Check this sample code: (more)

FileMaker DevCon Videos coming soon

As you may have seen the videos from FileMaker DevCon 2018 in Grapevine, Texas are planned to arrive soon.
The DevCon 2018 sessions by track website shows 9th October 2018 as release dates for the videos.

MBS Xojo Plugins, version 18.5pr1

New in this prerelease of the 18.4 plugins:
  • Updated to LibXL 3.8.3.
  • Removed draggingSourceOperationMaskForLocal events (deprecated in MacOS 10.7).
  • Rebuild with Xcode 10. Minimum MacOS version is now 10.9.
  • Added SetMethodPreference and SupportedAlgorithms methods to SSH2SessionMBS class.
  • Updated SQLite to version 3.25.2.
  • Added more methods for NSFileManagerMBS.
  • Changed methods in NSFileManagerMBS to be regular ones, not shared. This is needed as we may have multiple file managers.
  • Updated OpenSSL to version 1.1.1 for all targets.
  • Added CipherMBS.CipherNames and DigestMBS.DigestNames functions.
  • Added CipherNames and DigestNames to SSH2SessionMBS and CURLSMBS classes.
  • improved DynaPDFMBS.PrintPDFPage to use DevMode data if set.
Or ask us to be added to our shared Dropbox folder.

MBS FileMaker Plugin, version 8.5pr1

New in this prerelease of version 8.5 of the MBS FileMaker Plugin: Download at or ask for being added to the dropbox shared folder.


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