Did you know that FileMaker Pro or the whole computer can go to sleep while doing a longer script?
On macOS there is a feature called App Nap to save energy by sleeping applications. And of course on Windows and macOS the display gets to sleep after some time and sometimes even the whole PC or Mac goes to sleep.
With MBS FileMaker Plugin, you can add a script line on the start of your script and then a second line on the end of the script.
The start of the script calls the ProcessActivity.beginActivity function like this:
Set Variable [ $activity ; Value: MBS( "ProcessActivity.beginActivity"; "IdleSystemSleepDisabled UserInitiated"; "Doing Backup in FileMaker" ) ]
On the end of the script, you have a line to end the activity:
Set Variable [ $r ; Value: MBS( "ProcessActivity.endActivity"; $activity ) ]
All activities are cleared when you exit the application.
(more)
Since Xojo Inc. doesn't plan one, we step in and invite you to come to our home country. To keep it easy for us, we'll have the conference nearby here and we would enjoy, if you join us and visit the area here.
The MBS Xojo Conference will take place Thursday,
25th and Friday,
26th April 2024 in
Andernach in Germany, a town nearby here at the river Rhine. We look forward to host around 50 Xojo developers here, have various speakers for the sessions as well as several workshops and labs.
You can come by train or by car there and we encourage attendees to stay the weekend and explore the area. If you take a train, you find plenty of
direct train connections from Hamburg to Munich, Berlin and Luxembourg. If you fly, look for flights to Frankfurt or Cologne and take trains from there to Andernach station. From the station, you can about walk 1 km to the hotel.
For Wednesday,
24th April 2024 we plan a
Xojo training day, where we will develop various projects in Xojo. We include various things attendees like to see. For example we could write a desktop app to manage a database, then a web app to use the same database. For mobile users we could make a little web service providing the data to an iOS and/or Android application.
Attendees coming from abroad can stay a bit longer. We plan to have a sight seeing day for Tuesday to visit some nice places and show you a bit of the landscape, the history and the culture. Enjoy extra days here and plan to visit the world's highest cold-water
geyser, which erupts up to 60 meters high in the nature reserve Namedyer Werth.
The planning of the conference involves all the things we learnt from previous conferences. Skipping expensive hotels in big cities to make the conference more affordable. The key thing is to bring together developers from all over the world to exchange ideas, learn new techniques and have a great time.
More details will be announced once the paper work is finished.
Xojo Inc. announced a sale for the next few days:
If you waited to get a Xojo license or to renew your license or to upgrade to Xojo Pro, this is your chance.
As usual, if your Xojo license is up for renewal in May or June, you can update now and enjoy a discount. If your Xojo license expired already, just get a new one. With the discount it is cheaper than a regular update.
The add-ons are included in the sale. If you like to get one of the MBS articles there, you can use the sale price at Xojo Store or we match the price if you buy directly from us. Please contact us if you need a MBS Plugin license.
You can use MBS Plugin to earn some extra money in your Xojo application.
Try our classes for Windows Store, macOS Store, iOS Store or iOS Ads to monetarize your application.
Windows Store
Check out the Windows Store classes to perform in-app purchases. You can offer your application as a trial for free and then offer the user to purchase a license to a full or pro version of your application. If your application is sold upfront, you can query license information.
Blog:
Selling Xojo apps on Windows Store
Documentation:
WindowsStore classes
Example project:
/WinFrameworks/Windows Store
(more)
Check out the FMTraining.tv website. Richard Carlton and his team do a daily free live stream about FileMaker to watch.
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.
We talk about what is new in the MBS FileMaker Plugin in version 13.2. Including the plugin running on Linux on ARM with a demonstration of Trace function, DynaPDF functions for JavaScript and form fields, use of MongoDB functions, more Archive functions, WinPDF functions for rendering previews of PDF pages, AVPlayer and WMFP functions.
(more)
Let's say you have a Xojo desktop app and you like to have an iOS app, which can connect to the desktop application. We like to avoid the user entering some kind of connection information and just automatically connect. Then once connected, the iOS app can do some things and talk to the desktop app for more. Let's say the desktop app manages the database and the iOS app can show data on the go, e.g. after scanning a barcode.
For this project we use Xojo with two projects, one for desktop and one for iOS.
Desktop Project
We use a ServerSocket to wait for incoming connections. We let the ServerSocket pick a random port instead of relaying on a fixed port number.
Public Sub StartServer()
ServerSocket = New MyServerSocket
ServerSocket.MinimumSocketsAvailable = 3
ServerSocket.Listen
System.DebugLog "Waiting on port "+ServerSocket.Port.ToString
End Sub
(more)
In this article I want to introduce you the new functionalities from the MBS Xojo Plugins in version 23.2.
CURL
With the new method SharedInstance from the classes CURLMultiMBS, CURLNMultiMBS and CURLSMultiMBS we simplify the multi transfer for our Xojo CURL Plugin. If you want more information to that then read our blogpost Easier multi transfer for our Xojo CURL Plugin. For The CURLMultiMBS classes you need a timer that calls Perform regularly. If you want to run Perform automatically you can set true in the AutoPerform property.
MongoDB
Since a few releases we also have the possibility to connect to a MongoDB database and work with it. Also in this release we extend the functionalities of MongoDB. First of all we can now convert information as Binary JSON for Mongo DB. The information is first read in an encoding of your choice or by default with UTF-8, converts to base64 and embeds it in a $binary JSON for use in MongoDB. You can use the method DataToBinary from the class MongoClientMBS for this. The data is passed as a string or MemoryBlock.
Two other new methods of this class deal with time in MongoDB. With the method NowUTC we get the current UTC timestamp. This can look like this:
{ "$date" : "2023-03-09T11:39:34Z" }
Matching to this there is the method Time which gives us the matching UTC timestamp in a JSON with a time as seconds since 1970 specification.
(more)
In this article we want to introduce you the new functions from the MBS FileMaker Plugin in version 13.2.
FileMaker 2023
As you have probably already noticed, FileMaker 2023 was launched at the end of April. We are happy to announce that we have adapted our plugin to be compatible with the new FileMaker version and you can use the functions as usual under FileMaker 20.1. With the Release 13.2 we support FileMaker 7 to the latest version 20.1.
DynaPDF
DynaPDF focuses in this release on the integration of JavaScript codes in the documents. Already since plugin version 6.4 we can include JavaScript actions in a PDF document. A JavaScript Action causes a script to be compiled and executed by the JavaScript interpreter of Adobe's Acrobat. Depending on the nature of the scripts, this can cause various interactive form fields in the document to update their values or change their visual appearances. With the new function DynaPDF.ChangeJavaScriptAction you can replace an existing JavaScript action with a new one. If you want to know which action has been stored use the DynaPDF.GetJavaScriptAction function to find out. As return you get the JavaScript code as string. You can also add a global JavaScript to the PDF document with the function DynaPDF.AddJavaScript. In case of an already existing global JavaScript you can change the name of the JavaScript with DynaPDF.ChangeJavaScriptName. With DynaPDF.ChangeJavaScript you not only change the name of a global JavaScript but you can also replace it completely with a new one. If you want to read the code of the global JavaScript, you can use the DynaPDF.GetJavaScript function.
To find out how many actions are stored in a PDF document, you can use the DynaPDF.GetActionCount function. This function returns the number of actions. This value can be used to enumerate actions or to delete specific action types.
In PDFs we can also work with tags to provide accessible metadata. We have to open a tag first, then we add the content for the tag and then we have to close it again. For this task we have the functions DynaPDF.OpenTag and DynaPDF.CloseTag.
If we use tabs in DynaPDF we can now also determine their length. For this we use the DynaPDF.SetTabLen function. In the parameters we set how many spaces a tab should measure. The minimum number we can specify is 1 and the maximum number of spaces is 256. The default value is 3. Of course you can also query the specified number of spaces. For this you can use the DynaPDF.GetTabLen function.
(more)
Since FileMaker 2023 we got the feature named OnWindowTransaction trigger. You may have read about it on the Claris Engineering Blog: Creating audit logs with the OnWindowTransaction script trigger.
Now where do you store your AuditLogs?
In the same table, the same database, on the same server?
Maybe better take advantage from the fact, that you get JSON data passed to your trigger and pass it to MongoDB. Since MongoDB stores JSON very efficiently, you could just store all your audit data there. Whether you store them all on one MongoDB server (cluster) or have each FileMaker server from a client have their own MongoDB server, depends on how your organize your data.
We have an older blog post showing a script to store copies of all records in a MongoDB for all changes and do the audit there. That has the advantage, that you could restore from your copy in MongoDB as well as access these records from e.g. a website. See older blog post: FileMaker and MongoDB
(more)
Thank you all for answering our survey about a potential conference in 2024.
We got 66 answers. From that 20 people answered that they would come, plus 27 with a maybe. We also got 10 people unlikely to show due to various concerns (time, location, money) and 9 straight nos.
(more)
You can join a FileMaker conference in Rome, Italy this year from 3rd to 8th October 2023.
For the international traveler coming to the conference, please note, that there are extra days for sight seeing and/or training with your fellow developers.
Day |
Sight Seeing |
Training |
Conference |
3rd Oct |
Tour Rome & FileMaker Undergrounds of Rome and via dell'acqua |
4th Oct |
Tour Rome & FileMaker Industrial Rome |
Course build your FileMaker app from scratch (in Italian)
Course build your FileMaker app from scratch (in English) |
5th Oct | | | Claris Partner meeting (in English) Conference start. |
6th Oct | | | Conference & Gala Dinner |
7th Oct | | | Conference |
8th Oct | | JavaScript & FileMaker Course Design Masterclass (in Spanish) |
More information is coming to the website over the summer. Last year we had live translation between English and Italian and you could use head phones to hear all presentations in either language. This year FMGuru looks into adding Spanish and French translation.
If you sign up, please find below the €100 discount coupon on the event ticket: RFWMBS100
Just six months until the
EngageU conference. ClickWorks and Square Moon continue to organize a pan-european conference for Claris FileMaker developers from all over the world.
EngageU - FileMaker Conference
12th - 14th of November 2023, Antwerp, Belgium
After the conference in Malmö last year, we see the second conference coming to Belgium. This may be the largest in-person European FileMaker conference this year with about 250 participants. Claris is expected to join and all presentations will be in English.
Please mark the date in the calendar to sign up for the conference.
And it's great reason for people from all around the world to do a business trip to see Belgium.
More events are listed on our
events website.
We are happy to
sponsor the
CURL project for a year now. And maybe your company could also find and support an open source project?
Join in and Sponsor!
Please consider sponsoring the project. Maintaining, bug tracking, hosting and supporting this project requires resources. You can help!
We do not consider single-shot donations as "sponsorships". Those are donations and while welcome, they will not be honored by a mention here. Sponsors mentioned here keep supporting the project long-term by covering some sort of notable cost to the benefit of the project and its users.
The best way to sponsor this project is to allow a paid engineer or two to spend work hours on curl. Responding to email and writing curl improvements. Alternatively, donate to curl on the opencollective page.
Pledge
We promise to use donated funds only for things and activities that we believe are beneficial for the project and its development. That includes but is not limiting us to bug-bounties, developer conferences, infrastructure, services and hardware.
(more)
The MBS Plugin mail lists moved to a new server since our existing provider stops doing mailinglists. We'll move over everyone, but you have to confirm your email by replying the confirm message.
MBS FileMaker Plugin Mailing list
To post a message to all the list members, send email to
mbsfmplugin @ lists.monkeybreadsoftware.com.
You can subscribe to the list, or change your existing subscription here:
Mailinglist Website
MBS Xojo Plugins Mailing list
To post a message to all the list members, send email to
mbsxojoplugins @ lists.monkeybreadsoftware.com.
You can subscribe to the list, or change your existing subscription here:
Mailinglist Website
The old lists will end around 22nd May 2023 and we may send a reminder. Please check your spam folder for the confirmation email and/or for emails from the new list. You may need to adjust your mail sorting rules.
If you don't receive the email for next pre-release, you can sign up again manually.
Check out the FMTraining.tv website. Richard Carlton and his team do a daily free live stream about FileMaker to watch.
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.
We talk about MBS FileMaker Plugin and the OCR functions. This includes WindowsOCR functions for Windows and Vision functions for platform specific OCR functions.
(more)
Let us show you how to install a new virtual machine with Linux on macOS, so we can have a local server to test. Works fine with various virtual machine software packages like Parallels, VMWare Fusion or UTM.
First, let us start with creating a new virtual machine. After we clicked the plus button on the VM list window, the new window offers us Ubuntu 22, so lets Parallels download and install it.
Once this is done, you click on the user to login and set your new password. This will be the password you need later for sudo. And thus right away after we login, parallels asks this password to install the tools and then offers to restart the linux machine. For the Ubuntu assistant, we can click next a few times as usual, e.g. without location services or an Ubuntu account.
(more)
Nickenich, Germany - (May 9th, 2023) -- MonkeyBread Software today is pleased to announce
MBS FileMaker Plugin 13.2 for Claris FileMaker for macOS, iOS, Linux and Windows, the latest update to their product that is easily the most powerful plugin currently available for Claris FileMaker produce line. As the leading database management solution for Windows, macOS, iOS and the web, the Claris FileMaker Pro Integrated Development Environment supports a plugin architecture that can easily extend the feature set of the application.
MBS FileMaker Plugin 13.2 has been updated and now includes over 7100 different functions, and the versatile plugin has gained more new functions:
Our plugin got updated to work with FileMaker 2023. A few changes were necessary to keep functionality working for the new version and our current plugin can be used in several FileMaker Pro versions from ancient version 7 (on Windows) to the latest 20.1 one. Changes include adjustments for
window functions, script workspace, fmp URL handling, get functions and other places.
We include a Linux ARM version of our plugin. Everything should work the same on ARM CPUs, just like on Intel or AMD CPUs. You can now install Ubuntu 22 in a VM on your Macbook with M1/M2 Chip or on AWS E2 instances with ARM CPUs. While we updated our plugin for Ubuntu 22, we still keep it compatible for the older Linux versions, so there is just one plugin file.
For Windows we add
functions to use the built-in PDF functionality from Microsoft. You can open PDF documents, query page count and sizes and render preview pictures of pages. The plugin uses this functionality internally to provide previews of PDF documents in various functions and the
Vision.RecognizeText function now works with PDF on Windows.
Our
DynaPDF functions got upgraded to allow you to add JavaScript to the PDF document, change or query existing JavaScript scripts. We added functions to set tab length as well as tag functions for tagged PDF documents.
The
GraphicsMagick functions got improved to now include WebP support. This includes reading and writing WebP files, so you can directly upload WebP functions from your CMS solution to your web server.
For MongoDB we have new functions to convert text or container data to binary data for passing to the MongoDB database for efficient storage (without Base64 overhead). The
MongoDB.NowUTC function returns the current date in the format needed for MongoDB in JSON and
MongoDB.Time can convert time stamps if needed.
On macOS in the debugger, you can now copy variable or field values via contextual menu. You can sort your scripts not just by name, but also by ID.
We upgraded the
PhotoPicker functions to work on macOS in addition to iOS. We updated
Java functions for Java versions 19 and 20. The
WMFP functions can now return details on the audio channels, frame rate, bits and samples. The
archive functions can now handle lz4 and zstd compression methods. For Windows you can control more on printing WebViewers with
WebView.SetPrintParameter function.
Finally we updated curl to version 8.0.1, LibArchive to 3.6.2, libwebp to 1.3.0, SQLAPI to 5.2.4b3, SQLite to 3.41.2, libXL to 4.1.2 and Xcode to version 14.3.
See
release notes for a complete list of changes.
Nickenich, Germany - (May 9th, 2023) -- MonkeyBread Software today is pleased to announce
MBS Xojo Plugins 23.2 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 3000 classes and 80,000 documented features, and the versatile plugins have gained more new functions:
For Windows we add
classes to use the built-in PDF functionality from Microsoft. You can open PDF documents, query page count and sizes and render preview pictures of pages.
The
GraphicsMagick functions got improved to now include WebP support. This includes reading and writing WebP files, so you can directly upload WebP functions from your CMS solution to your web server.
For
MongoDB we have new functions to convert strings or MemoryBlocks to binary data for passing to the MongoDB database with DataToBinary function for efficient storage (without Base64 overhead). The NowUTC function in the
MongoClientMBS class returns the current date in the format needed for MongoDB in JSON and Time can convert time stamps if needed.
We added new delegate based functionality to
CURLSMultiMBS class to make it easier to do asynchronous transfers in the background. For this you can now use our shared instance and the AutoPerform property.
The
ScintillaControlMBS control can now print and show print preview with the new FormatRange method. You can use it to render text into a picture and set various options with the new
ScintillaRangeToFormatMBS class.
The
CanvasGesturesMBS class is updated to work with DesktopCanvas control. The
PHPickerViewControllerMBS class is updated to work on macOS and not just on iOS. We updated our Java classes for Java versions 19 and 20. The
MFPMediaItemMBS class can now return details on the audio channels, frame rate, bits and samples. The archive classes can now handle lz4 and zstd compression methods. For Windows you can now control the printing for WebView2 with the new
WebView2PrintSettingsMBS class.
Finally we updated curl to version 8.0.1, LibArchive to 3.6.2, libwebp to 1.3.0, SQLAPI to 5.2.4b3, SQLite to 3.41.2, libXL to 4.1.2, and Xcode to version 14.3.
See
release notes for a complete list of changes.
9. Mai 2023 - Monkeybread Software veröffentlicht heute das
MBS FileMaker Plugin für Claris FileMaker in Version 13.2, mit inzwischen über 7100 Funktionen eines der größten FileMaker Plugins überhaupt. Hier einige der Neuerungen:
Unser Plugin wurde aktualisiert, um mit FileMaker 2023 zu arbeiten. Ein paar Änderungen waren notwendig, um die Funktionalität für die neue Version zu erhalten und unser aktuelles Plugin kann in verschiedenen FileMaker Pro Versionen von der alten Version 7 (unter Windows) bis zur neuesten 20.1 verwendet werden. Zu den Änderungen gehören Anpassungen für Fensterfunktionen, den Script-Arbeitsbereich, die Behandlung von fmp-URLs, Get-Funktionen und andere Stellen.
Wir fügen eine Linux ARM Version unseres Plugins bei. Alles sollte auf ARM-CPUs genauso funktionieren, wie auf Intel- oder AMD-CPUs. Sie können nun Ubuntu 22 in einer VM auf Ihrem Macbook mit M1/M2-Chip oder auf AWS E2-Instanzen mit ARM-CPUs installieren. Während wir unser Plugin für Ubuntu 22 aktualisiert haben, halten wir es weiterhin für die älteren Linux-Versionen kompatibel, so dass es nur eine Plugin-Datei gibt.
Für Windows fügen wir
Funktionen hinzu, um die integrierte PDF-Funktionalität von Microsoft zu nutzen. Sie können PDF-Dokumente öffnen, Seitenzahl und -größe abfragen und Vorschaubilder von Seiten rendern. Das Plugin nutzt diese Funktionalität intern, um Vorschaubilder von PDF-Dokumenten in verschiedenen Funktionen bereitzustellen, und die Funktion
Vision.RecognizeText funktioniert jetzt mit PDF unter Windows.
Unsere
DynaPDF-Funktionen wurden erweitert, um das Hinzufügen von JavaScript zum PDF-Dokument, das Ändern oder Abfragen bestehender JavaScript-Skripte zu ermöglichen. Wir haben Funktionen zum Setzen der Tabulatorlänge sowie Tag-Funktionen für getaggte PDF-Dokumente hinzugefügt.
Die
GraphicsMagick-Funktionen wurden verbessert und bieten nun WebP-Unterstützung. Dies umfasst das Lesen und Schreiben von WebP-Dateien, sodass Sie WebP-Funktionen direkt von Ihrer CMS-Lösung auf Ihren Webserver hochladen können.
Für MongoDB gibt es neue Funktionen zur Konvertierung von Text- oder Containerdaten in Binärdaten, die zur effizienten Speicherung an die MongoDB-Datenbank übergeben werden können (ohne Base64-Overhead). Die Funktion
MongoDB.NowUTC gibt das aktuelle Datum in dem für MongoDB benötigten Format in JSON zurück und
MongoDB.Time kann bei Bedarf Zeitstempel konvertieren.
Unter macOS können Sie im Debugger jetzt Variablen- oder Feldwerte über das Kontextmenü kopieren. Sie können Ihre Skripte nicht nur nach Namen, sondern auch nach ID sortieren.
Wir haben die
PhotoPicker-Funktionen aktualisiert, damit sie nicht nur unter iOS, sondern auch unter macOS funktionieren. Wir haben
Java-Funktionen für die Java-Versionen 19 und 20 aktualisiert. Die
WMFP-Funktionen können nun Details zu Audiokanälen, Bildrate, Bits und Samples zurückgeben. Die Archivfunktionen können nun mit den Komprimierungsmethoden lz4 und zstd umgehen. Unter Windows können Sie mit der Funktion
WebView.SetPrintParameter mehr über das Drucken von WebViewern steuern.
Schließlich haben wir curl auf Version 8.0.1, LibArchive auf 3.6.2, libwebp auf 1.3.0, SQLAPI auf 5.2.4b3, SQLite auf 3.41.2, libXL to 4.1.2 und Xcode auf Version 14.3 aktualisiert.
Alle Änderungen in den Release Notes.
We enjoyed past Xojo conferences and we were a bit of disappointed, that Xojo Inc. didn't announce their 2024 conference plans.
So we may go and do our best to have a conference ourselves. In past years we run 10 conferences ourselves: Several in Koblenz and London, one each in Scheveningen, Berlin, Munich and Cologne. We regularly got over 50 attendees for the last conferences. For Berlin we even had about 80 people joining, which was our best result so far.
But we don't know how much interest is there for a conference in 2024, so we start with a survey to ask past attendees and interested Xojo developers to let us know their answers to a few questions:
(more)
The May/June (21.3) issue of xDev Magazine is now available. Here's a quick preview of what's inside:
The Last XDC? by Marc Zeedar
As in-person conferences fade in popularity, we're hoping London 2023 isn't the final XDC. Meanwhile, Xojo CEO Geoff Perlman announces Android support is coming in the next release of Xojo!
Marc Goes Across the Pond by Marc Zeedar
After years of postponements and cancelations, the London Xojo Developer Conference final happens. Marc reports on his trip with tons of photos of his adventures in London and from XDC 2023.
Windows OCR by Stefanie Juchmes
The Windows operating system has built-in support for optical character recognition. Stefanie explains how to use it via the Monkeybread Plugins for Xojo.
Raspberry Pi Electronic Fun, Part 1 by Eugene Dakin
Eugene begins a new series on how to use the LibGPIOD interface for Raspberry Pi. In this installment, he explains what LibGPIOD is and why you'd want to use it in your next Pi project with Xojo.
Plus: Topics such as Xojo preferences and using Big Numbers with MBS, and more!
New in this prerelease of the 23.2 plugins:
- Updated LibXL to version 4.1.2.
- Added HyperlinkIndex function to XLSheetMBS class.
Download:
monkeybreadsoftware.de/xojo/download/plugin/Prerelease/ or
from DropBox.
Or ask us to be added to our shared DropBox folder.
New in this prerelease of version 13.2 of the
MBS FileMaker Plugin:
Download at
monkeybreadsoftware.com/filemaker/files/Prerelease/, in
DropBox folder or ask for being added to the DropBox shared folder.
New in this prerelease of the 23.2 plugins:
Download:
monkeybreadsoftware.de/xojo/download/plugin/Prerelease/ or
from DropBox.
Or ask us to be added to our shared DropBox folder.
New in this prerelease of version 13.2 of the
MBS FileMaker Plugin:
Download at
monkeybreadsoftware.com/filemaker/files/Prerelease/, in
DropBox folder or ask for being added to the DropBox shared folder.
After the pandemic we come back to in-person conferences. But things are a bit different. People prefer to watch educational content on a website from home instead of sitting in a school class setup at a conference. Both Xojo and Monkeybread Software don't time development to the conference, so we don't have shiny new things to show off. If a new feature would be ready to go into a beta version, you would have seen it already.
The social get-together is a great part of the conferences. You meet people from the community, who you may not have seen in years. You talk with everyone to learn what they do and you discuss various aspects of the Xojo development with your peers. Once you know people in person, you later react different to them on the forums.
(more)