For our clients with plugin licenses for Monkeybread Software, we have a database with licenses and their email contacts.
Each license has multiple emails:
a primary email for renewal reminders and newsletters about new versions.
more emails as CC of licenses. e.g. the administrator or developer to install the license.
older alternative emails that are marked as old.
sometimes an extra email just for invoices.
If you contact us with one of the emails and we search the database, we find your record.
When you buy a license for a client, we can put your email as developer in our database, so all communication goes through you. We would still like to know the name of the client and use it for the license keys.
Since you may disappear and clients still may need to renew, we appreciate having the client's email in the database as an alternative one. Then we can ask them directly if they like to renew. Since we do this for 20 years, we have seen multiple developers retire already.
When you order a license for a client in the web shop, you put in the billing address. That may be either the client itself if they pay themselves or your company if you buy it for the client and bill them later. When you use your address, consider adding somewhere a few letters for indicating which customer an order applies to. Or better email us the details for the client separately. If you order an update for one of your clients, we may apply it automatically to the one where we sent the last renewal reminder.
If you already have a couple of clients with MBS Plugin licenses, you can contact us if we should change the primary email for their licenses.
Changed Alternate and DeviceNAttributes properties in DynaPDFColorSpaceMBS class to create the object on first use.
Changed GetInfoSpeedUpload, GetInfoSpeedDownload, GetInfoSizeUpload, GetInfoSizeDownload, GetInfoContentLengthUpload and GetInfoContentLengthDownload in CURLSMBS class to be Integer instead of Double.
Changed GetUsesTransparency in DynaPDFMBS class to return Integer instead of Boolean.
We got notice that Saxonica released the version 13.0 of their Saxon Library:
The first release of Saxon 13 has just been published. This is a new release
for Java, C#, C/C++, PHP, and Python. The highlights in this release are:
A redesigned Schema API that allows multiple schemas to coexist. You can now validate
an input document with one schema and the result with another, even for the same namespace.
More than 175 features from the draft 4.0 specifications are now available
in Saxon-PE and Saxon-EE, including:
JNodes, path navigation over trees of JSON maps and arrays,
If you encounter any issues with Saxon 13.0, please
report them
on our issue tracker.
Our MBS Plugins include Saxon 12.9 currently. We will soon review the new version and integrate it into MBS Plugins.
If any issues prevent that, we may report them and wait for the 13.1 version.
Our Saxon integration for FileMaker and Xojo is a powerful add-on to use XLST 3.0, XPath 3.1 and XQuery 3.1 in your solutions.
Following the cancellation of the FMK FileMaker Conference 2026, a low-cost alternative has been organized at short notice for the community: “FM meets Mozart.” The conference will take place from September 14 to 16, 2026, at the famous Mozarteum in Salzburg and is aimed at users and developers from the German-speaking FileMaker community.
The new event is designed as a community conference and will feature presentations and workshops on FileMaker, AI, interfaces, APIs, and cloud solutions. According to the event website, details of the program are currently being finalized. A three-day ticket costs €149.00 plus 20% Austrian VAT; participants are responsible for booking their own hotel accommodations and travel arrangements.
The event organizer, Bernhard Schulz, lives in Salzburg. He served on the board of the “FMK Association” until 2020 and, in addition to his work as a developer, regularly organizes successful business events. Jan Rüdiger had initially planned to organize the FMK event for Salzburg in 2026 with his own team. However, the event had to be canceled due to low registration numbers. To ensure that the community still has a top-notch gathering in Salzburg in September 2026, Bernhard Schulz stepped in at short notice with a streamlined concept, thanks to his extensive network in Salzburg. The “traditional” FMK remains unaffected by this and, as things stand, is scheduled to take place in Hamburg in September 2027.
The “FM meets Mozart” series kicks off on Monday, September 14, 2026, at 7:00 p.m. with the FMM Awards ceremony, hosted by Klemens Kegebein, at the Augustiner Bräu Kloster Mülln in Salzburg. A classic Bräustübl buffet will follow.
Accessible PDF documents are becoming increasingly important for government agencies, educational institutions, and companies that want to ensure their documents can be used by everyone, including people using assistive technologies like screen readers.
With the MBS FileMaker Plugin and the integrated DynaPDF library, you can create PDF/UA compliant documents directly from FileMaker.
What is PDF/UA?
PDF/UA stands for “PDF Universal Accessibility”. It is an ISO standard (ISO 14289) that defines how to create accessible PDF documents.
A normal PDF often contains only visual information. A human reader can see headings, paragraphs, tables, or image captions, but a screen reader cannot automatically understand the structure unless the PDF also contains semantic information.
PDF/UA solves this problem by adding structure information and accessibility metadata to the PDF document.
We recorded the presentations at the MBS Xojo Conference in April 2026 and here is the MBS Plugin presentation with David Cox:
Auto Reports — run Reports in your Sleep
Xojo is very useful for creating databases and reporting your data to the screen, a PDF, an email or a printer. Users often need to run these reports daily, weekly or monthly. But this can be a problem when staff are sick, on holidays, just too busy, we forget or when the number of reports gets too large.
Auto Reports are normal Xojo reports where your Xojo application runs the reports themselves automatically based on a time or database trigger, then send the results to email or SMS with no human intervention.
If you charge for your reports, you can have them delivered even when you are away from your computer, support more clients than you could manually manage and even have your invoices sent automatically.
Did you know that you can use MBS FileMaker Plugin in the Data API and provide an API to the outside world to produce PDFs?
You can have an external request come in to start a script, have the script create a PDF based on the given script parameters and then store it in a contaner field. Then another call can download that specific PDF from the container field. We use a global field here for the temporary storage. On a server script, global fields act like global variables and each session has their own one. So unless you prefer to store the PDF in a new record, you could simply use a global field to keep it until the session is finished.
Let's start with installation. The MBS FileMaker Plugin and the dynapdf library files go into the /FileMaker Server/Web Publishing/publishing-engine/wip/Plugins/ folder. After you copied the plugin there, you need to restart the wip process for Data API to have it load it. Once loaded you see a new log file in the Logs folder. When the dynapdf library is in the same folder as the plugin, we can load it with "" as path. If you registered the MBS server license before on the scripting engine, the MBS FileMaker Plugin for Data API should pick that up. But it is always good to have an MBS register script to apply the license if IsRegistered functions returns a zero.
In this article I want to introduce you the new functionalities from the MBS Xojo Plugins in version 26.2.
DynaPDF
In this release, DynaPDF is all about the DynaPDF Content Parser.
As PDF documents contain pages with content streams, you may be interested to inspect the content with our DynaPDFParserMBS class. You open a PDF document, you import pages into memory and then parse the page. Once you parse them page, you can access the content objects. How this works and what posibilityies you have you learn in the new Article DynaPDF Content Parser.
In DynaPDF, you can also embed tables. In this release, the SetColOrRowSpan methode from the DynaPDFTableMBS class allows you to specify the row height or column width of a cell in your table. In the parameters you first define the cell using its row and column numbers. Next, you specify the height or width of the cell. In the last parameter, you specify whether to use col span (true) or row span (false).
DynaPDF has also recently updated its licensing system. In detail the DynaPDF Starter license now includes encryption, form fields, and digital signatures. Previously, these features were part of the Lite license. If you are interested in these and other updates, we recommend reading the article DynaPDF Starter License Extended and taking a look at the product feature matrix: DynaPDF Starter vs. Lite vs. Pro vs. Enterprise
In this article we want to introduce you the new functions from the MBS FileMaker Plugin in version 16.2.
DynaPDF
This release includes new features for DynaPDF.
With DynaPDF.Parser.Content, you can now retrieve the page content as JSON. In the parameters, you can limit the information in the JSON by specifying a filter. For example, the code snippet below retrieves only the DrawPath operators.
We recorded the presentations at the MBS Xojo Conference in April 2026 and here is the MBS Plugin presentation with Christian Schmitz talking about what is new in MBS Xojo Plugins:
Today we like to make a certificate file in FileMaker with DynaPDF. And we have two ways to make this. First is a script to do the steps with Set Variable script steps. Second way is a Let() statement, where you make the PDF on the fly in a calculation.
Recently I had to explain a client why he can’t expect us working on a Friday. Last Thursday was Feast of the Ascension, a federal holiday in Germany. Nowadays usually recognized as Fathers Day. A day to spend time with family. Most businesses, all schools and a lot of administrative buildings close.
What do I do on that holiday? For the past years we got the bicycles out and I made a bicycle trip with our the children to an ice cream shop. Lots of fun and even smaller children on a small bike can do that.
Having a free Thursday allows employees to use one vacation day to get a four day weekend. Or use 4 days for a 9 day vacation. For our area the schools close for the Friday. And we call such a day between an holiday and the weekend Brückentag in Germany.
Nobody expects here anyone to work on such a long weekend. And we just used it for a short staycation.
Searching through FileMaker or the XML export can quickly become overwhelming. XML dumps are dense, deeply nested, and often inconsistent in formatting. That’s exactly the problem the MBS Script Search in MBS FileMaker Plugin was built to solve: a fast, flexible, browser-based search tool that makes large script collections actually usable.
This post walks through how the search works, what makes it different, and how to get the most out of it.
PDF files look simple on the surface, but internally they are highly structured documents built from objects, streams, and drawing instructions. If you're working with tools like DynaPDF's parser functions, understanding how PDFs are organized is essential.
We recorded the presentations at the MBS Xojo Conference in April 2026 and here is the keynote video with Geoff Perlman talking about what is new in Xojo:
The MBS FileMaker Plugin expands FileMaker's capabilities significantly. One particularly powerful feature is WebView.CreateWindow, which allows you to create fully independent web viewer windows with advanced JavaScript integration. Added in version 16.2.
With version 16.2 of the MBS FileMaker Plugin, a powerful new function has been added: Matrix.MBS. This feature opens up a flexible way to dynamically call MBS functions using parameters stored inside a matrix.
If you’ve ever needed to construct parameter lists programmatically or pass variable-length arguments into MBS functions, this addition makes the process significantly cleaner and more scalable.
As PDF documents contain pages with content streams, you may be interested to inspect the content with our DynaPDFParserMBS class. You open a PDF document, you import pages into memory and then parse the page. Once you parse them page, you can access the content objects. That's great for a few things:
Extract text or vector graphics
Remove unwanted elements
Modify drawings
Get bounding boxes and coordinates from every item.
Check which font is active for which text fragment.
A lot of properties in the classes are settable, so you can for example change a color easily. Or adjust a coordinate in some vector graphic or adjust the line width.
Or when you like to place a template on top of an existing page, you may need to modify the content to remove rectangle in the background, so you can see through the template to the content behind it.
Here is a sample, that marks all images for deletion and then writes the page back.