When using MBS FileMaker Plugin, you may need to combine a lot of functions together to get some work done. That makes our toolbox of functions so flexible to use for your needs. Let us show you four examples:
Regularly import files from hot folder
- First you start with Schedule functions to run a script regularly every few minutes in FileMaker Pro. Independent of SetTimer script step, so you can have multiple of them.
- You look into a file path with Files.List to get a list of file names in the folder.
- By using our List functions you compare the current file list to the one from last run. For example List.And would find similar files in both files, while List.FindUnequals would find the ones different.
- Next you use Path functions to build file path by taking folder path and the file name. Use Path.AddPathComponent to not care about slash vs. backslash.
- A function like Hash.DigestFile may quickly get you a SHA512 secure hash of the file.
- You can do a search in FileMaker to check whether the hash is known. Or use our FMSQL functions to do the check with a FM.ExecuteFileSQL call to do a "SELECT COUNT(*) WHERE hash=?" SQL query to count the records and either get back 0 or 1.
- To read the file you may use Container.ReadFile function and get it in a variable first.
- You can then create a new record for the file with FileMaker script steps. Or you use FM.InsertRecord to create record for it without switching layout.
- If you do a document database, you may go for a PDF document and use our PDFKit functions or DynaPDF functions to extract text for PDF, maybe split the PDF and make preview pictures for the pages.
- For image files, you may use GraphicsMagick functions or CGImageSource functions to extract metadata for image files like camera model or GPS coordinates.
(more)

Seems like Claris Inc. is running like crazy and got much more productive the last months.
Instead of waiting a year for changes to show up, things are now going much more quickly. New stuff shows up every few weeks.
Looks like they have dozens of projects running in parallel. We saw a few things publicly announced in the
vision webinar recently. Since we are taking part in testing and we develop plugin, we can already try a few things coming closer to release. Keep an eye on the announcements and future roadmap videos from Claris. Although at the current pace, a release may come before that.
What does agile development mean?
Projects are run with parallel developments in various area, separated in source code branches. Usually every 2 weeks a sprint ends and the project managers prioritize items for the next sprint. They schedule the work for the developers and review progress. When things are ready, they get merged in the main branch and go in the next release. Otherwise they stay in the backlog and may get more attention in the next sprint. Instead of having features planned a year in advance, Claris can now go within a few months from planning to shipping.
A consequence of that is that new features are not as old as they used to appear. You may see things labeled preview over several versions until the feature is completed. Be sure to try new features and report issues as soon as possible, so you can get a bug fix for the next release. With 3 or 4 releases a year, we may get used to upgrade your FileMaker installations much more often.
For a plugin developer, we may see more often changes to the plugin interface. A new SDK may now come for every new release within a year. And you may need to follow closer with the plugin versions to the releases as we can't make sure our current plugin may load in a future release. Often not a bug directly, but more likely, the plugin may make assumptions about the environment, which may no longer be true. We fix those things as we notice them, but we may not put them in the release notes beside some note like "Updated to newer plugin SDK". Don't expect old plugins to work and enjoy the new versions coming!
And now we wait for the next FileMaker version to enjoy our plugin even more.
Recently I was happy to see that two books are listed for FileMaker on the book stores. And as both arrived within a few days, I had the luck to read in both of them.
If you like to have a book handy for some free time to sit on your couch in the garden and read something, you may want to get both:
They are very different in their style and content, while both covering FileMaker. Mark walks over all the aspects in FileMaker, talking about every feature, going through the dialogs, discussing the options and it's a great reference manual to quickly dip into a topic. On the other side Richard has a very open and direct approach and will not just talk about FileMaker, but includes topics about the business aspect of development. How to best handle projects, clients, tools and add-ons. The little anecdotes in-between are very entertaining and show you easily what to do and what to not do.
On the way through the book Mark not just shows features in FileMaker, but also builds an example with the reader. Great for a bigger to follow this step by step. When you dip deeper later in the book, you get comprehensive guides on topics like ExecuteSQL, which shows the FileMaker specifics there.
While Richard works his way through various features in FileMaker, he has an eye for what can go wrong. For a few ancient features in FileMaker, he simply recommends to not use them for new developers creating newer solutions. As he explains why not to use them, the reader may learn the downsides and concentrate on newer features doing the same job, but better. And of course Richard shows how to do things, especially to keep them future proof and avoid possible trouble later.
Since FileMaker went into agile mode and now releases frequently, the books will get updated regularly with newer content. So we expect to buy fresh copies every year. And even if you know FileMaker well, it may be worth reading them. You always find something new you didn't know!
Have you read them? Your thoughts?

We rebuild the the DynaPDF library for iOS, so you can use the current version of DynaPDF with your FileMaker iOS SDK apps when using the
MBS FileMaker Plugin.
We include four variants in our download:
- DynaPDF for iOS Device
armv7 and arm64 - DynaPDF for iOS Simulator
x86_64, i386 and arm64
When building your iOS app, just include the dynapdf framework file in the frameworks folder inside the app and call
DynaPDF.Initialize in the start script passing the framework name and your license key.
The result should be OK if everything worked. If you get an error message including "mach-o, but wrong architecture", well you did copy the wrong framework file.
You can use lipo command line utility to remove the architectures you don't need.
Download:
DynaPDF iOS 4.0.49.dmg or
DynaPDF iOS 4.0.49.zip
PS: You need to sign the frameworks with your code signature.
Check out the
FMTraining.tv website. Richard Carlton and his team do a
daily free live stream about FileMaker to watch. And they have a huge library of FileMaker training material to watch and learn all about the Claris FileMaker product family.
A few days ago Christian Schmitz from Monkeybread Software joined a live episode to talk a bit about the MBS FileMaker Plugin. Watch it on
YouTube.
Do you like this video?
Please let Richard know and send him your wishes or ideas for future live broadcast as well as topics for training videos. And check out the FileMaker Training bundles as well as their new book for FileMaker, updated for2021.

Let us show you a few things to use in
MBS FileMaker Plugin and add to your solutions quickly today. Give your users a few new possibilities. From easy to complex, you may be able to copy a few scripts and adjust them to your field and layout names and get instantly new functionality for your solution. Let us show you a few things related to container fields in your solution:
Continuity Camera
If you have containers fields on a layout for images or PDF containers, how about adding a little button next to the field to let the user take a picture with their iOS device and insert it to the container?
The button may be hidden, if it's not FileMaker Pro on a Mac. But when clicked, you call
ContinuityCamera.SetScriptTrigger and
ContinuityCamera.PopupMenu function to show the popup menu to pick the device to use. The user then takes picture. Your script is trigged to take the result and place it in the container.
See blog article:
Continuity Camera for FileMaker
(more)
When you use our MBS FileMaker Plugin, you will make a lot of calls to the plugin. Most will succeed, but some will fail. Do you notice when something fails?
IsError function
We see a lot of clients coding without checking for error state. But not all function calls succeed and our MBS FileMaker Plugin keeps a last error state for you. Even on server with multiple scripts running in parallel, we keep an error state per script. You can query it with MBS("IsError") to see if the last function call returned an error.
You may do an error check each time you call a function with an If script step and handle the script. You may even write a log entry in a text file (Text.AppendTextFile) or database (FM.InsertRecord). We have a nice custom function for this in this blog article to log Get(LastError) results, but you can adapt it to MBS FileMaker Plugin with using IsError function: Looping over records in FileMaker with error checking
(more)

As you may have seen, Claris Inc. released the new version 19.2.2 of its FileMaker product family.
This update brings a lot of improvements to the quick start experience, but also a couple of very welcome bug fixes and a few new features.
Read more in the releases notes.
MBS Plugin has been updated in
version 11.1 to take advantage of the latest FileMaker Plugin SDK for version 19.2. Since we changed a few things in the last months to adjust to the ongoing changes in FileMaker, we highly recommend to update. Older versions with 10.2 or newer may also work, but we can't guarantee it.
See
Claris FileMaker Pro 19.2.2 Release Notes
Claris FileMaker Go 19.2.2 Release Notes
Claris FileMaker Cloud 2.19.2.2 Release Notes
What’s new in Claris FileMaker 19.2.2
To download the new version, you may use the download page for your licensed software (see your license email for a link) or use the in-product updater next week.

In this article I want to introduce you the new functions from the
MBS FileMaker Plugin in version 11.1.
Archive
With the new
Archive.CompressContainer function you can compress the content of a container into an archive. In the parameters you can specify in which format your archive should be. The following formats are available for this purpose: 7zip, ar, arbsd, argnu, arsvr4, bsdtar, cd9660, cpio, gnutar, iso, iso9660, mtree, mtree-classic, newc, odc, oldtar, pax, paxr, posix, raw, rpax, shar, shardump, ustar, v7tar, v7, warc, xar and zip. Then you can additionally specify a filter at e.g. for zip format it can be store or deflate. We also need to specify the destination path, as well as the container from which the data is used. Furthermore we can specify other options like the compression level.
DynaPDF
Also in the DynaPDF component there is a new function that brings even more style into your tables. The
DynaPDF.Table.SetCellStyledText function inserts the specified styled text into the cell. To do this, we first specify in the parameters the table ID, as well as the row and column. Now we can specify the alignment of the text horizontally and vertically, using the values left/bottom, center or right/top. Then we can set the text with the styles to be inserted into the cell. Optionally, you can specify the leading factor. If this factor is greater than 0, then the plugin will add \LD[] commands to styled text to set leading relative to font size. This way you define the spacing between lines.
An example of function usage may look like this:
Set Variable [ $r ; Value: MBS("
DynaPDF.Table.SetCellStyledText"; $table; $rowNum; 0; "left"; "bottom"; TextColor ( "Hello World" ; RGB ( 65535 ; 0 ; 0 ) ) ) ]
(more)
The recording of the MBS Plugin presentation from FMDiSC meeting from 12th March 2021:
Content
00:00 Introduction to developer goodies and syntax coloring.
30:30 fmSyntaxColorizer database
35:50 FileMaker Snippet Storage database
36:40 Script WorkSpace Context Menu Commands database
39:20 JSON functions like JSON.Colorize
41:00 XML functions like XML.Colorize
42:40 WIA functions, DynaPDF functions and GraphicsMagick functions together.
44:40 OCR functions and DynaPDF functions together
45:30 RegEx functions, especially RegEx.DataDetector
47:30 iOS example for QuickLook functions to markup a document.
50:30 The combination of various components to a solution
53:40 Automatic installation and the Plugin License Decision Graph
Please do not hesitate to contact us if you have questions.

Noch vier Monate bis zur
FileMaker Konferenz 2021 in Malbun (Liechtenstein) und zur
MBS Plugin Schulung Schulung am Mittwoch vorher.
Vom
22. bis 24. Juli 2021 abgesagt findet die elfte deutschsprachige
FileMaker Konferenz in Malbun, Liechtenstein statt.
Die Veranstalter vom Verein FM Konferenz erwarten auch 2021 rund 120 Entwickler, Anwender, IT-Fachleute und Entscheidungsträger aus Wirtschaft, Bildung und Verwaltung. Rund um über 20 Fachvorträge und Workshops wird es viel Zeit zum Vernetzen in den gemeinsamen Pausen und beim Abendprogramm geben.
Für den Deutschsprachigen Raum ist diese Konferenz das Treffen des Jahres. Hier finden Sie vom Anfänger bis zum Profi Kontakte zu anderen Entwicklern. Lernen Sie was es neues gibt, nehmen Sie Impulse mit für die eigene Arbeit und erfahren Sie mehr zu FileMaker von deutschsprachigen Experten!
Die
MBS Plugin Schulung vorher findet voraussichtlich am
statt im gleichen Hotel am
21. Juli 2021 abgesagt.
Bitte planen Sie wenigstens einen extra Tag ein für ihren Besuch in Liechtenstein, damit Sie die Natur in dem schönen Tal geniessen können. Den Aufstieg auf den Sareis können Sie bequem zu Fuß vom Hotel aus starten und die Turnastraße hinauf spazieren bis zum Restaurant am Gipfel. Oder alternativ die Seilbahn nehmen. Wir empfehlen die Anreise Montags, Dienstag etwas Zeit zum Wandern und Mittwochs dann die MBS Schulung als Vorprogramm zur Konferenz. Abreise Sonntags, damit Sie nicht den Samstagabend verpassen.
Hoffen wir, dass sich im Frühjahr die Corona Lage verbessert und die Konferenz stattfinden kann.
Let us show you a few of the new features in the version 11.1 of our MBS FileMaker Plugin:
Some links for the video:
00:15 Installation
00:50 Preferences dialog
01:30 RegEx.DataDetector
02:30 QuickLook functions with new Markup
06:00 EPC Barcode project and Barcode functions
07:20 Enhancements for Calculation Dialog
09:00 Enhancements for Custom Functions Editor
12:15 Enhancements for Debugger
Please do not hesitate to contact us if you have questions.

Nickenich, Germany - (March 9th, 2021) -- MonkeyBread Software today is pleased to announce
MBS FileMaker Plugin 11.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 11.1 has been updated and now includes over 6500 different functions, and the versatile plugin has gained more new functions:
We have new
IBAN functions to validate bank account numbers. You can format the IBANs for printing with spaces or get the in compact style. We can calculate the checksum and provide example IBANs for various countries. You can query a regular expression to find IBAN within some text with our
RegEx functions.
For macOS and iOS we have new functions for data detectors. That is the feature Apple provides for applications like Safari or Mail to identify data within the text. With our
RegEx.DataDetector function you can detect phone numbers, email addresses, URLs, postal addresses and dates in FileMaker.
If you use FileMaker on macOS you can enjoy new buttons for
calculation dialogs to evaluate expression and check for syntax errors. In custom functions editing dialog you can check your functions and define a test case using comments to run your custom functions with a specific set of parameters. Links to MBS functions in calculations can now also be links to Dash application.
For
DynaPDF we added
DynaPDF.Table.SetCellStyledText function to fill tables with styled text from FileMaker easily. The styled text conversion now includes super- and subscript styles. DynaPDF can be used with ZUGFeRD in newer version 2.1.1.
We added a couple of
utility functions: The
Archive.CompressContainer function to quickly archive a container. Use
Math.FormatNumber to format a number with desired decimal separator and number of decimals. With
Math.NormInv you can calculate the NormInv function like in Excel.
For
dictionary functions we added a new
Dictionary.AddDictionary function to add one dictionary to an existing one. Use
Dictionary.ToJSON to convert to JSON and the new
Dictionary.FromJSON function to convert back to a dictionary. In
List functions you can search lists with
List.Find and
QuickList.Find functions.
The FileMaker Pro on Windows we implemented
PKCS12.ShowDialog and
X509.ShowDialog functions to show certificate in standard dialogs. We implemented
WebView.StopLoading for Windows.
For iOS we improved the
QLPreviewPanel functions to allow editing of documents. You can show a PDF document or image and have the user annotate documents with the
built-in markup tools. Then you can save the modified PDF document back in the container. Use
iOSApp.InstallOpenURLHandler and related functions to catch URL requests to your custom FileMaker iOS SDK application.
Finally we updated CURL library to version 7.75.0, DukTape to 2.6, DynaPDF to 4.0.49.139, dyncall to 1.2, LCMS to 2.12, LibXL to 3.9.4, LibXML to 2.9.10, LibXSLT to 1.1.34, openssl to 1.1.1i, SQLAPI to 5.1.4b5, Xcode to 12.4 and the plugin SDK for version 19.2.
See
release notes for a complete list of changes.

9. März 2021 - Monkeybread Software veröffentlicht heute das
MBS FileMaker Plugin für FileMaker in Version 11.1, mit inzwischen über 6500 Funktionen eines der größten FileMaker Plugins überhaupt. Hier einige der Neuerungen:
Wir haben neue
IBAN Funktionen zur Validierung von Bankkontonummern. Sie können die IBAN für den Druck mit Leerzeichen formatieren oder sie in kompakter Form formatieren. Wir können die Prüfsumme berechnen und Beispiel-IBAN für verschiedene Länder bereitstellen. Mit unseren RegEx-Funktionen können Sie einen regulären Ausdruck abfragen, um IBAN innerhalb eines Textes zu finden.
Für macOS und iOS haben wir neue Funktionen für Datendetektoren. Das ist die Funktion, die Apple für Anwendungen wie Safari oder Mail bereitstellt, um Daten innerhalb des Textes zu identifizieren. Mit unserer Funktion
RegEx.DataDetector können Sie Telefonnummern, E-Mail-Adressen, URLs, Postadressen und Datumsangaben in FileMaker erkennen.
Wenn Sie FileMaker unter macOS verwenden, können Sie sich über neue Schaltflächen für
Berechnungsdialoge freuen, um Ausdrücke auszuwerten und auf Syntaxfehler zu prüfen. Im Bearbeitungsdialog für benutzerdefinierte Funktionen können Sie Ihre Funktionen überprüfen und mit Hilfe von Kommentaren einen Testfall definieren, um Ihre benutzerdefinierten Funktionen mit einem bestimmten Satz von Parametern auszuführen. Links zu MBS-Funktionen in Berechnungen können nun auch Links zu Dash-Applikationen sein.
Für DynaPDF wurde die Funktion
DynaPDF.Table.SetCellStyledText hinzugefügt, um Tabellen einfach mit formatiertem Text aus FileMaker zu füllen. Die Konvertierung von formatiertem Text beinhaltet nun auch hoch- und tiefgestellte Textstile. DynaPDF kann mit ZUGFeRD in der neueren Version 2.1.1 verwendet werden.
Es wurden einige Utility-Funktionen hinzugefügt: Die Funktion
Archive.CompressContainer archiviert einen Container. Mit
Math.FormatNumber können Sie eine Zahl mit dem gewünschten Dezimaltrennzeichen und der Anzahl der Nachkommastellen formatieren. Mit
Math.NormInv können Sie die NormInv-Funktion wie in Excel berechnen.
Bei den
Dictionary Funktionen haben wir eine neue Funktion
Dictionary.AddDictionary hinzugefügt, um ein Dictionary zu einem bestehenden hinzuzufügen. Mit
Dictionary.ToJSON können Sie nach JSON konvertieren und mit der neuen Funktion
Dictionary.FromJSON wieder zurück in ein Dictionary konvertieren. In den
List Funktionen können Sie Listen mit den Funktionen
List.Find und
QuickList.Find durchsuchen.
In FileMaker Pro unter Windows haben wir die Funktionen
PKCS12.ShowDialog und
X509.ShowDialog implementiert, um Zertifikate in Standarddialogen anzuzeigen. Wir haben
WebView.StopLoading für Windows implementiert.
Für iOS haben wir die
QLPreviewPanel Funktionen verbessert, um die Bearbeitung von Dokumenten zu ermöglichen. Sie können ein PDF-Dokument oder ein Bild anzeigen und den Benutzer mit den eingebauten
Auszeichnungswerkzeugen Dokumente annotieren lassen. Anschließend können Sie das geänderte PDF-Dokument wieder im Container speichern. Verwenden Sie
iOSApp.InstallOpenURLHandler und verwandte Funktionen, um URL-Anfragen an Ihre eigene FileMaker iOS SDK-Anwendung abzufangen.
Schließlich haben wir die CURL-Bibliothek auf Version 7.75.0, DukTape auf 2.6, DynaPDF auf 4.0.49.139, dyncall auf 1.2, LCMS auf 2.12, LibXL auf 3.9.4, LibXML auf 2.9.10, LibXSLT auf 1.1.34, openssl auf 1.1.1i, SQLAPI auf 5.1.4b5, Xcode auf 12.4 und das Plugin SDK auf Version 19.2 aktualisiert.
Alle Änderungen in den
Release Notes.

We see confusion about the different Cloud offerings. Some features are Cloud only or not available on one Cloud, but maybe another. Why?
Because it depends what Cloud you are talking about. Like who runs what FileMaker Server in what data center in what configuration and with what operation system.
If you see a little piece of information, you may not get the full picture. Let us show you few examples:
Do Plugins run in the Cloud?
Yes, of course they run on the FileMaker servers in the Cloud, just not in the current FileMaker Cloud offering from Claris Inc. itself. But other Cloud vendors do support plugins on the server side.
MBS FileMaker Plugin is available for server usage on macOS, Windows and Linux.
OData support is limited to Claris FileMaker Cloud?
No, for OData you need the Linux version of FileMaker Server, which can be used via both Claris FileMaker Cloud and other Cloud offerings using Linux. As long as your hosting company uses Linux for FileMaker Server, you can use OData. Learn more about
OData here. OData is great as it includes schema modifications, something you can't do otherwise by scripts.
Can we use Custom Web Publishing?
Yes, but the FileMaker Server in the Cloud must use FileMaker Server with Windows or macOS. The Linux version does not support Custom Web Publishing with PHP and XML. Thus you can't use those features in the Claris FileMaker Cloud, but go with a hosting company using macOS or Windows.
Can I buy a FileMaker team license with the Cloud server?
Yes, most vendors are happy to sell the license. Please note that for Claris FileMaker Cloud you have to buy the license with the server. Although it may be worth to call Claris Sales and ask if they would provide some discount when you trade in the existing license. Other vendors allow you to bring your own license, which helps to move an on-premise server to the cloud.
What Cloud offerings are available?
When you need to decide on a Cloud offering, please note that there are multiple things and FileMaker Cloud is not an unique name. We list the offering from Claris Inc. as Claris FileMaker Cloud here:
- Claris FileMaker Cloud, great for novice users, who have to just make a brand new solution available to a team.
- Many Claris Partners offer traditional FileMaker Server hosting with MacOS, Linux or Windows on dedicated servers. The Claris Partner search lists dozens of hosting companies.
- FMCloud.fm or similar provides FileMaker Server running via Docker on Linux servers. Using Docker is a bit more efficient than running separate VMs for each server with a full virtualized OS.
- You can rent your own server with a hosting company like AWS EC2, Microsoft Azure, Host Europe or whatever you prefer and install your own copy of FileMaker Server. That may go with macOS, Windows or Linux version FileMaker Server.
As you may see I pointed out
FMCloud.fm, because that is a service with a free trial and you don't need to call someone and ask for a hosting or price. You can click your server, get it running and have your solution running in less than an hour. The great thing on the Cloud is that it is automated, available right away without delays. A fascinating development!
If you know another Claris Partner offering similar service, please let us know. Please do not hesitate to contact us with your questions.

New in this prerelease of version 11.1 of the MBS FileMaker Plugin:
- Fixed rounding error with Time.Sleep function.
- Fixed a problem with a crash in CURL functions with SFTP with empty password or username.
- Updated plugin SDK for version 19.2.
- Reduced number of exported symbols in Windows DLLs.
Download at
monkeybreadsoftware.com/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.

New in this prerelease of version 11.1 of the MBS FileMaker Plugin:
Download at
monkeybreadsoftware.com/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.
For a few years we have worked on integrating the
LibXL library and making functionality available for FileMaker. Beside all the standard built-in features from
LibXL to read/write Excel files, we have some extra functionality developed ourselves:
Copy Cells
LibXL comes with a copy cell command, see
XL.Sheet.CopyCell. Beside that we added
XL.CopyRow to copy content of a row. Similarly
XL.CopyColumn copies a column. As you can pass different book reference numbers, you may even copy from one document to another one or copy from one sheet to another sheet within the same document.
The
XL.CopySheet function can copy the content of a sheet to another document, great if you like to extract one sheet from one document and copy it to a new document. Finally we made
XL.CopyContent to copy the content of all sheets into a new document. That helps to convert between XLS and XLSX, older and newer Excel formats in both directions.
TimeStamps
Since FileMaker uses timestamps, we have
XL.Date.DoubleToTimeStamp and
XL.Date.TimeStampToDouble functions to convert the numeric time values in Excel to/from timestamps in FileMaker.
The
XL.Sheet.CellWriteDate function writes a timestamp or date from FileMaker directly into a cell. You still need to pass a format parameter referencing the date format to show the value later.
(more)

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