We recorded the presentations at the MBS Xojo Conference in April 2024 and here is the tenth video with Hans-Peter Görg presenting about Depot diversification visualization:
Even if you invest in ETFs to build up your own portfolio, achieving the desired diversification is not easy. Several ETFs can create shares clusters and regional clusters through the shares held indirectly through them.
The app was developed in Xojo to be able to control this and to visualize the regional and holdings distribution.
More videos will follow into the playlist.
Wir freuen uns auf einen neuen Stammtisch mit
72solutions:
Nach einem heißen Sommer starten wir Ende September in die nächste Stammtisch-Runde.
Bitte Mittwoch, den 25. September 2024 um 18 Uhr für den FileMaker Stammtisch in Wien reservieren!
Wir freuen uns über ...
- Personen, die den Begriff FileMaker schon einmal gehört haben und nähere Informationen möchten;
- FirmenmitarbeiterInnen/Inhouse-EntwicklerInnen, die sich über Input für ihre Individuallösungen freuen;
- erfahrene und unerfahrene ProgrammiererInnen, die sich fachlichen Austausch wünschen;
- ExpertInnen, die gerne über den Tellerrand hinaus blicken.
Hinweis FB-Gruppe:
Zusätzlich haben wir eine Facebook-Gruppe. Parallel zur E-Mailbenachrichtigung werden wir hier ebenfalls die aktuellen Informationen zu den jeweiligen Stammtischen veröffentlichen.
Anmeldung hier
Der genaue Veranstaltungsort wird, je nach Anzahl der teilnehmenden Personen, noch bekannt gegeben.
Wir möchten darauf hinweisen, dass jeder für seine eigenen Kosten verantwortlich ist.
Dieses mal kann auch Christian Schmitz von Monkeybread Software dabei sein!
Ich hoffe man sieht sich in Wien.
New in this prerelease of the 24.4 plugins:
- Added size and boundingRectWithSize methods for NSAttributedStringMBS class.
- Fixed WindowsDeviceWatcherMBS class to pass an WindowsDeviceInformationUpdateMBS for Updated event.
- Upgraded all linux compilers to newer versions. Requires GLIBCXX_3.4.26 now for Scintilla.
- Disabled trace logging for MongoDB by default. Was accidentally enabled.
- Implemented async events for 32-bit Linux for newer Phidget classes.
- Improved events for LibUSBTransferMBS class on Linux 32-bit.
- Enabled new JSONMBS class to work well on Linux 32-bit.
- Fixed a bug in DrawRotatedTextMBS function where it would not rotate text on Windows.
- Added DecodeIMAPFolderName functions to CURLSMBS class to help decoding IMAP folder names.
- Updated Tidy library to version 5.8.
- Removed a deprecated constants and methods from tidy classes and added new ones.
- Added OptionNames and Tidy functions to TidyDocumentMBS class.
- Added NSUserActivityMBS and NSUserActivityEventsMBS classes for adding the Handoff feature in your iOS or macOS application.
- Updated XL plugin for Linux 32-bit to use version 4.3 of LibXL.
- Added hitTest function to NSViewMBS class.
- Added Records method and Operator_Convert to MongoCursorMBS class.
- Added kSSLVersionMax* constants for CURLSMBS class.
Download:
monkeybreadsoftware.de/xojo/download/plugin/Prerelease/.
Or ask us to be added to our shared DropBox folder.
You can subscribe to our Xojo mailing list to get notified for new pre-release and release versions.
New in this prerelease of version 14.4 of the
MBS FileMaker Plugin:
Download at
monkeybreadsoftware.com/filemaker/files/Prerelease/
You can subscribe to our FileMaker mailing list to get notified for new pre-release and release versions.
We recorded the presentations at the MBS Xojo Conference in April 2024 and here is the nineth video with Marc Zeedar presenting about more Design Patterns:
(more)
In this article Stefanie introduces you to the new functionalities from the MBS Xojo Plugins in version 24.3
Python
I would like to introduce you to the highlight of this release right at the beginning. You can now use Python code in your application with the help of the MBS Xojo Plugins. This programming language, which appeared in the 90s, is one of the most popular of its kind and is used by many developers. We are therefore pleased to be able to open up this world to you in this release. Our new PythonMBS class can load a local Python library and evaluate expressions or run scripts. Get and set variables in Python to exchange data in memory. The Python code can optionally call back to Xojo code with custom functions
We discuss this topic in more detail in our blog article Using Python in Xojo.
Take a look at this article and take a dip into the world of Python with Xojo.
(more)
Looks like we may have a successor for dotfmp coming to Wien:
We're excited to invite you to the next unconference for FileMaker enthusiasts, set to take place in Vienna from June 4-7, 2025.
After the success of dotfmp.berlin, the desire for an event that fosters open discussions, interactive workshops, and collaborative break-out sessions remains strong. We're in the process of securing a venue that will perfectly cater to our needs for this dynamic and engaging gathering.
To help us plan effectively, please let us know if you can join us by preregistering at the following link. (even let us know if you can`t make it)
If you have friends who might also be interested in joining us in Vienna you are welcome to send them this link.
We value your feedback and are eager to collaboratively create an event that surpasses expectations.
Looking forward to your participation,
the Vienna Calling Team!
Please use the
link to add yourself to the list of interested people. We look forward to meet you in Vienna!
Thanks to
72solutions for taking the initiative to continue what Egbert started with
dotfmp.
In this article Stefanie introduces you to the new functions from the MBS FileMaker Plugin in version 14.3.
Python
I would like to introduce you to the highlight of this release right at the beginning. You can now use Python in your projects with the help of the MBS FileMaker Plugin. This programming language, which appeared in the 90s, is one of the most popular of its kind and is used by many developers. We are therefore pleased to be able to open up this world to you in this release. Use our Python functions to load a local Python library and evaluate expressions or run scripts. Get and set variables in Python to exchange data in memory. The Python code can optionally query records from FileMaker using ExecuteSQL or Evaluate functions.
We discuss this topic in more detail in our blog article Using Python in FileMaker.
Take a look at this article and take a dip into the world of Python with FileMaker.
(more)
We recorded the presentations at the MBS Xojo Conference in April 2024 and here is the eight video with David Cox presenting about using URLConnection to Export to PDF across all platforms:
Providing PDF reports from HTML within your applications is easy for Desktop and Web apps, but nearly impossible with Mobile apps. Including additional software to do the conversion makes your app larger and more likely to be rejected by App Stores. Instead, create a RESTful Web server to take your HTML via a URLConnection and place the result into a database as a solution that works consistently for Desktop, Web and Mobile apps.
More videos will follow into the playlist.
Collect them all and show that you know something about Claris FileMaker:
For you and your colleagues this is a great way to spend some time learning a few new details at the Claris Academy and then finish the tests with success.
Get the top developer tools and third party components for the Xojo cross-platform development platform at a huge savings.
Omegabundle for Xojo 2024 is a collection of the most useful tool sets, add-ons, digital books and components for use with Xojo Inc’s Xojo development environment. If purchased separately and not including any additional offers, the total cost would be over $4066. Omegabundle for Xojo 2024 costs $399.99, a $100 limited time discount off of the regular $499.99 price.
Xojo is an award-winning, cross-platform development tool for the Desktop (macOS, Windows, Linux), Web, iOS (iPad/iPhone) and Raspberry Pi. With Xojo, you can create native applications by using drag-and-drop to build your user interface and then one straight-forward programming language to enable the functionality. Xojo is powerful and modern, yet easy to use and learn.
Included Products
-
Einhugur Plugin Pack for Xojo (UPDATED). e-CryptIt Engine for Xojo and all 39 libraries and plugins, including plugins to work with Microsoft Excel and Microsoft Word.
-
Ohanaware App Wrapper (UPDATED). Prepare your application for the Mac App Store or Web Distribution (macOS only app)
-
GrafittiSuite Desktop Edition (UPDATED). 69 (up from 66 from 2023!) incredible user interface controls for Xojo that add value and improve the professional appeal of your Xojo applications.
-
xDev Library (NEW) Xojo Database Collection Book + 19 new digital articles
-
MBS Complete Plugins for Xojo (UPDATED). 47 plugins that extend Xojo with capabilities you want and need to build professional, native OS applications
-
MBS SQL Plugin for Xojo (UPDATED). The alternative database interface to Xojo. Connect to 14 different database systems, use more without relaying on ODBC.
-
MBS SQLite Extension for Xojo (UPDATED). Adds significant additional functions and support of Regular Expressions in working with SQLite databases.
-
Paradigma Software Valentina Studio Pro (UPDATED). Ultimate reports designer, database administration and forms creation tool that runs on all three operating systems - Windows, macOS, Linux. Select one OS version.
-
Paradigma Software ValentinaDB ADK for Xojo (UPDATED). Embed the ultra-fast, object-relational Valentina database into your applications and deploy royalty free - Windows, macOS, Linux, including Raspberry PI! Also works with local SQLite files and as a client to Valentina Server.
-
Paradigma Software Valentina Reports ADK for Xojo (UPDATED). Generate visually rich reports as graphics, web pages or PDF from your Xojo applications on Windows, macOS, Linux including Raspberry PI! Also works with local SQLite files and as a client to Valentina Server.
-
Paradigma Software Valentina Server Unlimited (UPDATED). 4-in-1 Reports Server, Forms Server along with two database servers: one built on object-relational Valentina Database and the other on SQLite. Report and forms serving works with MySQL, PostgreSQL, MS SQL Server and the included Valentina and SQLite servers
-
xDev Magazine (UPDATED). Get back issues and a year’s subscription to xDev Magazine, the professional’s magazine for developing with Xojo.
You can learn more Omegabundle for Xojo 2024 from the Omegabundle website.. Please allow up to 3-5 business days for all components to be supplied by participating vendors. If you are ready to purchase, order now from the Paradigma Software store.
A common problem clients have is to install the right plugin file on Linux. It seems to confuse some clients which Linux variant they have and then the plug-in won't load.
Plugin location
The MBS Plugin on a server goes into three folders:
FileMaker Server/Database Server/Extensions
FileMaker Server/Web Publishing/publishing-engine/cwpc/Plugins/
FileMaker Server/Web Publishing/publishing-engine/wip/Plugins/
First is for server side scripts, second for WebDirect and third for Data API. Once you put the plugin into the folders, check admim-console to activate plugins for all three and for server scripting activate MBS plugin. If the plugin doesn't show there, you may need to restart server.
Once plugin is loaded, you should find new log files in your Logs folder.
(more)
Nickenich, Germany - (July 9th, 2024) -- Monkeybread Software today is pleased to announce MBS FileMaker Plugin 14.3 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 14.3 has been updated and now includes over 7400 different functions, and the versatile plugin has gained more new functions:
Use Python scripts in your FileMaker scripts. Use our Python functions to load a local Python library and evaluate expressions or run scripts. Get and set variables in Python to exchange data in memory. The Python code can optionally query records from FileMaker using ExecuteSQL or Evaluate functions.
Our CURL functions got enhanced to better handle MQTT connections. Use CURL.SetMQTTScript to set a script to be called when messages arrive and CURL.GetMQTTMessages to get the received messages. The debug log shows the URL for the request for helping you to debug the scripts.
If you use our Drag & Drop functions, you can use an overlay window as the drop target. Use DragDrop.AttachToOverlay function to attach a drop area on the overlay and let the user drop files on the overlay. Your script decides what to do with the files.
We got the WebView.SetVirtualHostNameToFolderMapping function to create new virtual host mapping for the WebViewer on Windows. It allows you to redirect requests to a specific domain to html files in a local folder.
We added six more SetTag functions for CFunction, CLibrary, Dictionary, Java, Mutex, and Schedule objects. This allows you to store additional information with the plugin object, e.g. a record identifier.
In DynaPDF you can now keep annotations from flattening in DynaPDF.FlattenAnnots function, if DynaPDF doesn't recognize them. The DynaPDF.Parser.FindText function can now skip sorting with the new SearchAsIs flag. You can enable an image cache for DynaPDF and change line annotation's coordinates.
Our calculation dialog tools got updated to allow using shift key to check syntax, evaluate or format only a selection of text. The code formatting can now detect lines with semicolon first and format the whole text this way. You can pre fill the list of global variables for auto complete with a list of names with SyntaxColoring.AutoCompleteVariables.SetGlobals function.
We fixed the UNNotification functions to work better in FileMaker 21, the SystemInfo.isSequoia can detect the next MacOS version and SystemInfo.MacMemoryHostStatistics provides detailed memory statistics. Use Window.HasFormattingBar to check if FileMaker shows the formatting bar in FileMaker Pro on macOS and Windows. Use FM.RecordStatistics to query size of a record and use Archive.CompressText to add text to a new archive.
Finally we updated CURL to version 8.8.0, DynaPDF to 4.0.89.256, SQLAPI to 5.3.2, SQLite to 3.46.0, LibXL to 4.3, the plugin SDK and Xcode to version 15.4.
See release notes for a complete list of changes.
Nickenich, Germany - (July 9th, 2024) -- Monkeybread Software today is pleased to announce MBS Xojo Plugins 24.3 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 82,000 documented features, and the versatile plugins have gained more new functions:
Use Python scripts in your Xojo application. Our new PythonMBS class can load a local Python library and evaluate expressions or run scripts. Get and set variables in Python to exchange data in memory. The Python code can optionally call back to Xojo code with custom functions.
We improved NSLocaleMBS class for macOS and iOS to provide more information with properties. Use localizedString functions to get localized names for these identifiers and use the DidChange notification with NSNotificationObserverMBS class to get a callback if locale changes.
In DynaPDF you can now keep annotations from flattening if DynaPDF doesn't recognize them. The FindText method in DynaPDFParserMBS class can now skip sorting with the new SearchAsIs flag. You can enable an image cache for DynaPDF and change line annotation's coordinates.
Our CURL plugin got enhanced to better handle MQTT connections. We got a new example to show you how to do MQTT connections. The debug log for CURL connections shows the URL for the request for helping you to debug the scripts.
For Windows we added WindowsDeviceWatcherMBS class to watch for devices connecting. The WindowsDeviceInformationMBS class provides details. This helps with our BLE classes for Windows to better find devices.
The low level compression classes for bzip and zlib (ZLibDecompressMBS, ZLibCompressMBS, BZip2DecompressMBS and BZip2CompressMBS classes) got new constructors to take output buffer as ptr and buffer size as integer, so you can use them with MemoryBlocks. The SetInput methods now take ptr, too.
The new UIDeviceMBS class provides details about the iOS device. Query orientation, system version, model and orientation. The XMLValidatorMBS class can now convert XML to canonical format. The isValidJSON function in JSONMBS class can validate whether some text is valid JSON.
Use the new DarwinHostVMStatisticsMBS class to query memory statistics for virtual memory on macOS and iOS. Use the Duplex property with NSPrintInfoMBS class to switch duplex on or off. And check the isSequoia function in SystemInformationMBS module to detect the next macOS version.
Finally we updated CubeSQL library to version 5.9, CURL to 8.8.0, DynaPDF to 4.0.89.256, the plugin SDK for Xojo 2024r2, SQLAPI to 5.3.2, SQLite to 3.46.0 and updated to Xcode to version 15.4.
See release notes for a complete list of changes.
9. Juli 2024 - Monkeybread Software veröffentlicht heute das MBS FileMaker Plugin für Claris FileMaker in Version 14.3, mit inzwischen über 7400 Funktionen eines der größten FileMaker Plugins überhaupt. Hier einige der Neuerungen:
Verwenden Sie Python-Scripts in Ihren FileMaker-Scripts. Verwenden Sie unsere Python-Funktionen, um eine lokale Python-Bibliothek zu laden und Berechnungen auszuwerten oder Scripts auszuführen. Holen und setzen Sie Variablen in Python, um Daten im Speicher auszutauschen. Der Python-Code kann optional mit ExecuteSQL oder Evaluate-Funktionen Daten aus FileMaker abfragen.
Unsere CURL-Funktionen wurden verbessert, um besser mit MQTT-Verbindungen umgehen zu können. Verwenden Sie CURL.SetMQTTScript, um ein Skript zu setzen, das aufgerufen wird, wenn Nachrichten ankommen, und CURL.GetMQTTMessages, um die empfangenen Nachrichten abzufragen. Das Debug-Protokoll zeigt die URL für die Anfrage an, um Ihnen bei der Fehlersuche in den Skripten zu helfen.
Wenn Sie unsere Drag & Drop-Funktionen verwenden, können Sie ein Overlay-Fenster als Drop-Ziel verwenden. Verwenden Sie die Funktion DragDrop.AttachToOverlay, um einen Drop-Bereich auf dem Overlay anzulegen. Der Benutzer kann dann Dateien auf das Overlay ziehen. Ihr Skript kann dann entscheiden, was Sie mit den Dateien machen.
Wir haben die Funktion WebView.SetVirtualHostNameToFolderMapping, um eine neue virtuelle Host-Zuordnung für den WebViewer unter Windows zu erstellen. Damit können Sie Anfragen an eine bestimmte Domäne auf HTML-Dateien in einem lokalen Ordner umleiten.
Wir haben sechs weitere SetTag-Funktionen für CFunction-, CLibrary-, Dictionary-, Java-, Mutex- und Schedule-Objekte hinzugefügt. Damit können Sie zusätzliche Informationen mit dem Plugin-Objekt speichern, z. B. einen Primärschlüssel.
In DynaPDF können Sie nun bei der DynaPDF.FlattenAnnots Funktion verhindern, dass Anmerkungen eingeebnet werden, wenn DynaPDF sie nicht erkennt. Die DynaPDF.Parser.FindText Funktion kann jetzt mit dem neuen SearchAsIs Flag die Sortierung überspringen. Sie können einen Bild-Cache für DynaPDF aktivieren und die Koordinaten von Linienanmerkungen ändern.
Unsere Berechnungsdialog-Tools wurden aktualisiert und erlauben nun die Verwendung der Umschalttaste, um die Syntaxprüfung, das Formatieren oder Ausführen auf eine Textauswahl zu beschränken. Die Code-Formatierung kann nun Zeilen mit Semikolon am Anfang erkennen und den gesamten Text auf diese Weise formatieren. Mit der Funktion SyntaxColoring.AutoCompleteVariables.SetGlobals kann die Liste der globalen Variablen für die automatische Vervollständigung mit einer Liste von Namen vorbelegt werden.
Wir haben die UNNotification-Funktionen verbessert, damit sie in FileMaker 21 besser funktionieren, SystemInfo.isSequoia kann die nächste MacOS-Version erkennen und SystemInfo.MacMemoryHostStatistics liefert detaillierte Speicherstatistiken. Verwenden Sie Window.HasFormattingBar, um zu prüfen, ob FileMaker die Formatierungsleiste in FileMaker Pro unter macOS und Windows anzeigt. Verwenden Sie FM.RecordStatistics, um die Größe eines Datensatzes abzufragen, und verwenden Sie Archive.CompressText, um einem neuen Archiv Text hinzuzufügen.
Schließlich haben wir CURL auf Version 8.8.0, DynaPDF auf 4.0.89.256, SQLAPI auf 5.3.2, SQLite auf 3.46.0, LibXL auf 4.3, das Plugin SDK und Xcode auf Version 15.4 aktualisiert.
Alle Änderungen in den Release Notes
We recorded the presentations at the MBS Xojo Conference in April 2024 and here is the seventh video with Christian Schmitz presenting about Xojo Performance:
Let's check out what got faster in Xojo 2023r4. Let's measure the changes, look for slow functions and improve projects.
More videos will follow into the playlist.
When you like to position something in a window in FileMaker Pro, you may wonder what toolbars are visible to the user. The user may have the normal toolbar and below and for some toolbars you an ask the state, but not for the formatting bar.
(more)
If your user needs to compress one file and send it via email, they can compress the file in Finder or Explorer and attach the file to an email and send it off. But what if you ned to do this 100 times and you need a script to do this?
Send XML File as Zip
Let's start with a XML (or JSON) export from FileMaker which you like to email with MBS FileMaker Plugin. You could just add the XML directly as an attachment with SendMail.AddAttachmentText function and call the job done:
Set Variable [ $r ; Value: MBS( "SendMail.AddAttachmentText"; $email; $XML; "UTF-8"; "export.xml"; "application/xml") ]
But let's use our new Archive.CompressText function to compress the text to a zip file directly. Then we can attach the zip with Archive.CompressContainer function to a new email and send it later. When compressing we use zip as format with deflate as compression algorithm, which is the standard one for zip files. There is an option we use to set compression level to 9 for high. Yes, if data would be already compressed, we could use level 0 for no compression. We use UTF-8 for the encoding of the XML file, but please make sure the XML file has UTF-8 specified as encoding in the header line if it exists. Here is the sample script:
# get some XML
Set Variable [ $XML ; Value: "<test>Hello</test>" ]
# Compress it
Set Variable [ $CompressedXML ; Value: MBS( "Archive.CompressText"; "zip"; "deflate"; "export.zip"; "export.xml"; $xml; "UTF-8"; "compression-level=9") ]
# now add to email
Set Variable [ $email ; Value: MBS( "SendMail.CreateEmail") ]
Set Variable [ $r ; Value: MBS( "SendMail.AddAttachmentContainer"; $Email; $CompressedXML; "export.zip"; "application/zip" ) ]
Set Variable [ $r ; Value: MBS( "SendMail.SetPlainText"; $email; "Dear " & Contacts::FullName & ¶ & ¶ & "Attached you find the export from " & Get(CurrentDate ) & ¶ & ¶ & "Greetings" & ¶ & "Your FileMaker Server") ]
(more)
New in this prerelease of version 14.3 of the
MBS FileMaker Plugin:
Download at monkeybreadsoftware.com/filemaker/files/Prerelease/
You can subscribe to our FileMaker mailing list to get notified for new pre-release and release versions.
New in this prerelease of the 24.3 plugins:
Download:
monkeybreadsoftware.de/xojo/download/plugin/Prerelease/.
Or ask us to be added to our shared DropBox folder.
You can subscribe to our Xojo mailing list to get notified for new pre-release and release versions.
For MBS Xojo Plugins version 24.3 we add a new Python plugin part. The MBS Xojo Python Plugin and the new PythonMBS class allows you to evaluate Python code in Xojo and run scripts. This enables you to integrate existing Python code and use it in Xojo within your application. That may be a quick calculation to calculate a checksum, process some text, JSON or XML data or to utilize an existing script by running it within your application. Python comes with hundreds of available modules that you can import and use.
(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 error handling with ClearErrors and ErrorLog, HadErrors, AddToErrorLog, Text.TextToHTML and DynaPDF.CreateTextField functions.
(more)
We recorded the presentations at the MBS Xojo Conference in April 2024 and here is the sixth video with Ricardo Cruz presenting about Web Development:
Design tips for building applications with Xojo Web
More videos will follow into the playlist.
The July/August (22.4) issue of
xDev Magazine is now available. Here's a quick preview of what's inside:
Apple Intelligence by Marc Zeedar
At Apple's developer conference (WWDC) this June, the company announced their ambitious move into AI -- which they call Apple Intelligence. What is it and how will it effect Xojo developers?
A Household Light Controller (Rasp Pi Part 8) by Eugene Dakin
Eugene continues his series on fun projects with Xojo and Raspberry Pi, this time demonstrating how to use your Pi to control your household lights!
Spy On Your Variables by Marc Zeedar
Marc's design pattern series continues with the Observer pattern, which gives you a way to spy on your variables and take action when their value changes.
Comments on Comments by Tim Dietrich
Tim shares his thoughts on commenting code.
Plus: Topics such as how to use ChatGPT to correct your grammar, Mac text recognition, Xojo multitasking, an interview with Marc Zeedar, and more!
New in this prerelease of the 24.3 plugins:
Download:
monkeybreadsoftware.de/xojo/download/plugin/Prerelease/.
Or ask us to be added to our shared DropBox folder.
You can subscribe to our Xojo mailing list to get notified for new pre-release and release versions.
New in this prerelease of version 14.3 of the
MBS FileMaker Plugin:
Download at monkeybreadsoftware.com/filemaker/files/Prerelease/
You can subscribe to our FileMaker mailing list to get notified for new pre-release and release versions.