Just 2 months left until we all meet for Geoff's keynote. And for the
Xojo Developer Magazine I wrote an article with a couple of travel tips for sight seeing around Austin. With a couple of pictures from a few years ago when the last conference was in Austin.
The good news on the hotel is that plenty of rooms are still available. And now the
reservation system seems to work fine. It's $169 per room. No suites are available for discounted rates, just the regular ones. Anyway, as we can cancel room up to 2 days before conference, you should make your reservation early and later modify or cancel it.
The 2015
Xojo Developer Conference will take place April 29 - May 1, 2015 at the Radisson hotel in fabulous downtown Austin!
XDC is the best place for Xojo users to learn from the experts, network with other Xojo users from around the world and meet the Xojo engineers. We will have sessions for everyone wanting to get the most out of their tool - from topics for those who are just getting their feet wet, to sessions for the most advanced Xojo developer.
You may know already that MBS Plugin enhances the script editor on Mac with line numbers, script step colors, calculation colors and if enabled variable declaration check.
Typo suggestions
Now with version 5.0 we have some more enhancements. If you have a typo in your function name, you get a message. So the call MBS("ersio") returns now "[MBS] Unknown function: ersio. Did you mean Version?". Our plugin simply scans internal function list to find a function name which matches best to the given function name. You can of course use similar best match search for your own solutions with the List.BestMatch and QuickList.BestMatch functions.
Notifications
Next you can get notifications for script errors. Run Trace.EnableErrorNotifications function once to enable this feature on your Mac. Whenever a script error happens, you'll see this notification showing the error message and the function name:
Be sure to disable it when going into production so your users don't see the notifications. You should check in your scripts for errors and handle them gracefully.
Trace
Please also use Trace functions. The Trace function will make sure that for every function call to the plugin, you get a log entry with parameters and result. For version 5.0 we added logging of script triggers. Trace can either log to a file or to the system debug log. So pass a native path, e.g. on Mac "/tmp/test.txt". Or simply use Console.app on Mac or install DebugView app on Windows. DebugView on Windows can be run as administrator and enabled to capture global Win32 in order to see log messages from FileMaker server. Below a sample script to decide how to log for various cases:
If [Get ( SystemPlatform ) = 3]
#iOS, no plugin
Exit Script []
End If
If [MBS("IsServer")]
If [MBS( "SystemInfo.isMacOSX" )]
If [Get ( SystemPlatform ) = 4]
#Server on Mac for WebDirect
Set Variable [$r; Value:MBS("Trace"; "/tmp/TraceFMServerWebDirect.txt")]
Else
#Server on Mac
Set Variable [$r; Value:MBS("Trace"; "/tmp/TraceFMServer.txt")]
End If
Else
#Server on Windows
Set Variable [$r; Value:MBS("Trace")]
#read via DebugView app running as admin with Global Win32 capture enabled
End If
Else
If [MBS( "SystemInfo.isMacOSX" )]
#Client on Mac
Set Variable [$r; Value:MBS("Trace")]
#read via Console.app
Else
#Client on Windows
Set Variable [$r; Value:MBS("Trace")]
#read via DebugView app
End If
End If
As you see we use two log files for Mac server, depending if the plugin is loaded for web direct or normal server.
Registration
A common problem we see with people is wrong registration. When you work with clients and servers, it can get confusing. While the plugin allows you to use a runtime or server license for one seat to develop, please don't use a server or runtime license regularly for clients. A registration script can go like this:
If [Get ( SystemPlatform ) = 3]
# iOS, no plugin to register
Exit Script []
End If
If [MBS("isRegistered")]
# already registered
Else
# register
If [MBS("IsServer")]
Set Variable [$r; Value:Evaluate("MBS(\"Register\"; " & MBSPlugin::LicenseKeyServer & ")")]
Else If [MBS("isRuntime")]
Set Variable [$r; Value:Evaluate("MBS(\"Register\"; " & MBSPlugin::LicenseKeyRuntime & ")")]
Else
Set Variable [$r; Value:Evaluate("MBS(\"Register\"; " & MBSPlugin::LicenseKeyClient & ")")]
End If
End If
So first we exit early for iOS as there is no plugin for iOS. Than we check if plugin is registered already and do nothing in that case. Else we check the platform and use the appropriated registration key. In our case with Evaluate as the registration key is in a text field.
Using isRegistered function is better than a global variable and certainly it is better to call such a script from various places where you need the plugin to make sure you are registered. With FileMaker Server the script engine may crash and restart. In that case the plugin is loaded again and registration needs to be applied again.
Or you use our StoreRegistration function and save the registration to preferences file (Mac) or registry (Windows).
Update: For FileMaker Server on Mac OS X you can see messages in /Library/FileMaker Server/Logs/stderr file.

NICKENICH, Germany (February 24th, 2015) -- Monkeybread Software releases version 15.0 of the
MBS plug-in for Xojo and Real Studio.
The MBS plug-in comprises a collection of several plug-in parts which extend the Xojo (Real Studio) development environment with 2,100 classes featuring over 54,000 documented functions. Our plugins support all three platforms Mac OS X, Windows and Linux with all project types desktop, web and console.
Some of the highlights on the 15.0 update:
Our newest plugin version has several enhancement for networking. First we added a couple of
LDAP classes to query directory services. Than we added a new
CURL class to run
multiple transfers efficiently on the main thread and still in background. With improvements to Bonjour classes we can now
query IPs for domain names in background without blocking application. Finally
SSH Session now allows to connect with timeout.
On Windows the
new player class can play MP3 files with various options like rate, pitch and volume. Our
system information module can now properly detect Windows 8.1. We have a new class to get
notifications when a drive mounts or unmounts on Windows.
For
DynaPDF we added new methods to close and sign a PDF on Windows using the certificates installed on the computer. We got new classes for view ports, system fonts and geospatial coordinate data. Most DynaPDF classes now have private constructor to avoid coding errors.
For Addressbook on OS X we have new controls
ABPeoplePickerViewControlMBS and
ABPersonViewControlMBS. Using those controls you can have a person or group picker or a viewer for an addressbook entry in your Xojo windows. The new
account class helps to handle multiple accounts better. And
ABMultiValueMBS class got improved for easier use and better debugging.
If you need audio playback on OS X, the
CoreAudioListenerMBS class informs you about events like changes in the audio setup. Our
AUPlayerMBS class now allows to switch from timepitch to varispeed audio units while playing for better adjustments of pitch and rate properties.
More improvements are made to
Barcode,
AVFoundation,
Twain,
TAPI,
CoreText,
LCMS2 and
Quicklook classes. A couple of new cocoa classes help with
status items,
toolbar item groups,
file wrappers and
text attachments.
The plugin is updated for Xojo 2015r1 SDK and support new text data type in several cases. We updated DynaPDF to version 3.0.38.112, PCRE to 8.36, OpenSSL to 1.0.1j, libPNG to 1.6.14, libJPEG to 9.1, GraphicsMagick to 1.3.20, CURL to 7.39.0, LibXL to 3.6.1 and LCMS2 to 2.7fc1.

Nickenich, Germany - (February 24th, 2015) -- MonkeyBread Software today is pleased to announce
MBS FileMaker Plugin 5.0 for Mac OS X or 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, Mac, 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 5.0 has been updated and now includes over 3000 different functions, and the versatile plugin has gained more new functions:
For our Mac users we have now
hot keys. You can define a key combination to launch a FileMaker script, even if FileMaker is not the active application. Our
MountNotification functions allow you to run a script when a drive mounts or unmounts.
The MBS Plugin now helps finding errors in scripts. If you call the MBS function with an unknown function name, the error message now includes a suggestion for the right function name. We hope this helps finding typos. If a script runs and a function returns an error, the plugin will show a notification. This way you don't miss an error in your scripts. Please enable this feature for development using
Trace.EnableErrorNotifications.
For
DynaPDF we have new functions to create, modify and delete annotations. You can now create much easier preview images for pages and render whole PDF files to a folder of images. New functions allow to
place text as watermark across a page.
Our functions for menus allow you to query the current
FileMaker menu. Using our plugin you can
execute menu commands from a script,
hide or
change the shortcut. For the menu command to create a
database design report, we got a function to create a report automatically from a script.
The
barcode functions can now calculate checksums for
EAN and
ISBN. The function
Files.DiskInfo queries the size of a drive and the free space. We improved the
TAPI functions for Windows to make and receive phone calls.
For
webviewer we got a few new functions to query selected text,
formatted text and the
favorite icon. You can control the scrollbars and manage cookies. Finally we got a new example showing how to use a SVG drawing tool in FileMaker.
We updated a couple of libraries: DynaPDF updated to version 3.0.38.112, LibXL to 3.6.1, CURL to 7.39.0, GraphicsMagick to 1.3.20, libJPEG to 9.1, libPNG to 1.6.14, OpenSSL to 1.0.1j and PCRE to 8.36.

For our Germans speaking users:
Wir haben die Artikel zum MBS Plugin aus dem FileMaker Magazin gesammelt hier online gestellt: FileMaker Magazin Artikel:
- FMM 201105 Bilder skalieren mit dem MBS FileMaker Plugin, So bleibt Ihre Datenbank schlank
- FMM 201203 Arbeiten mit Dateidialogen, Komfortablere Dateiexporte per MBS Plugin
- FMM 201303 Script-Träger übers Netzwerk, Scripts triggern übers Netzwerk
- FMM 201303 Syntax Coloring, Berechnungen und Scripts bekennen Farbe
- FMM 201306 Zip-Archive auslesen, Bilder aus OpenOffice-Dokumenten extrahieren
- FMM 201401 Kalendertermine und Erinnerungen, Wie man Ereignisse aus FileMaker anlegt
- FMM 201402 Variablen, Globalisierte Lösungen per Plugin
- FMM 201405 Vorbereiten von PDFs für den Versand, Verkleinern großer Dateien
- FMM 201405 E-Mail-Versand, Mehr Möglichkeiten mit dem MBS Plugin
- FMM 201501 QuickList, Schnelle Listen für FileMaker
- FMM 201503 Neue Datensätze ohne Layoutwechsel, Mit Hilfe von SQL-Befehlen und dem MBS-Plugin
- FMM 201504 Datensätze effizient kopieren, Mit etwas SQL und dem MBS-Plugin
- FMM 201505 Wünsche werden wahr, Neues im „MBS-Plugin“ bei der FMK 2015
- FMM 201506 Authentizität durch Signaturprüfung, Daten übertragen und Veränderungen bemerken
- FMM 201601 iOS App SDK, Eigene iOS-Apps auf Basis von FileMaker
Wir empfehlen allen FileMaker Anwender ein Abo vom Magazin und den Kauf der alten Ausgaben. Das FileMaker Magazin ist eine excellente Quelle von Informationen, Anleitungen und Profitips.

Just updated the archives for the
Dash application. Does the auto update work for you?
So here you can click to launch Dash and install our plugin help:
MBS Xojo Plugins and
MBS FileMaker Plugin
You find the docset links also on our reference websites where you can download archive manually if needed:
MBS FileMaker Plugin Documentation for Dash and
MBS Xojo Plugins Documentation for Dash
Feedback is welcome.

New in this prerelease of the 5.0 plugins:
- Fixed crash in Text.ReplaceNewline on Windows with empty text.
- Updated DynaPDF to version 3.0.38.112.
Download at
monkeybreadsoftware.de/filemaker/files/

New in this prerelease of the 15.0 plugins:
- Improved PictureEditorMBS, PictureReaderMBS and PictureWriterMBS to work better for console target.
- Fixed AUPlayerMBS to switch between TimePitch and Varispeed units.
- Added CIImageMBS.RenderPictureWithAlpha function.
- Updated DynaPDF to version 3.0.38.112.
Download:
macsw.de/plugin. Or ask us to be added to our shared Dropbox folder.
Retweet or share our Omegabundle for Xojo 2014 post and get two prizes for Xojo developers.
We want your help getting the word out about Omegabundle for Xojo 2014. What you need to do is share on FB, or retweet about Omegabundle for Xojo 2014, and you will get:
- A free copy of Xdev Magazine
- Leroy's Status Bar for Xojo
To collect your prize, register on the Mirye site and post your link in your order.
You will get contacted within 48 hours by xDev Magazine and Leroy Software with your prize download information. You just need to do one share or retweet, but we appreciate your likes and anything else you'd like to do to get the word out.


New in this prerelease of the 5.0 plugins:
- Added support to SendMail functions for encoding attachment file names.
- Added MethodDraw SVG Editor example.
- Fixed test mode for DynaPDF works again. Use Starter, Lite or Pro to test if functions are okay with given license type.
- Fixed a possible problem with registration check.
- Added new PDF Kit functions: PDFKit.AddEmptyPage, PDFKit.AddImagePage, PDFKit.AddImagePage and PDFKit.NewPDFDocument.
- Optimized GraphicsMagick image loading in plugin to avoid trying several decoders.
- Fixed bug in GraphicsMagick reading jpeg 2000 images.
- Added GMImage.PurgeTemporaryFiles function.
Download at
monkeybreadsoftware.de/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.

New in this prerelease of the 15.0 plugins:
- Added support to CURLEMailMBS class for encoding attachment file names.
- Added DynaPDFMBS CloseAndSignPDFFile and CloseAndSignPDFFileWithDialog functions to sign PDFs on Windows using Crypt library.
- Changed AUPlayerMBS to always use NewTimePitch if available and allow switching while in use.
- Fixed AVMutableVideoCompositionLayerInstructionMBS.setCropRectangleRampFromStartCropRectangle method.
- Added/Improved properties for CALayerMBS class.
- Reduced dependencies between plugin, so CocoaBase can be used with Cocoa plugin.
- Added workaround for setEditionHighlightType selector problem with ABPersonViewMBS switching to editing mode.
- Added OutputUnit and TimePitchUnit properties and constants to AUPlayerMBS class.
- Improved variants handling of text data type.
- Fixed AUPlayerMBS to use HALOutput instead of DefaultOutput.
- Fixed bug in GraphicsMagick reading jpeg 2000 images.
Download:
macsw.de/plugin/Prerelease. Or ask us to be added to our shared Dropbox folder.
Method Draw is a fork of SVG Edit, a web based SVG editor. And we just got it working in FileMaker:
As you see we have script to initialize, load and save. So you can have a full featured drawing area in your FileMaker solution. Works fine here with FileMaker 11 on Mac, 13 on Mac and 13 on Windows. Other versions need to be tested.
Will be included as example with upcoming plugin release.
PS: We have also an example for Xojo to do similar.

A new issue of the German
FileMaker Magazine is published.
Das erwartet Sie in der neuen FileMaker Magazin Ausgabe:
20 Jahre FileMaker Magazin
- Damals beim FileMaker Magazin
Eine Verlagsgeschichte in Bildern | Klaus Kegebein
In eigener Sache
- FMM Titelwahl 2014
Spieglein, Spieglein an der Wand … | FMM Redaktion
Datenmodellierung
- Modulare Konzepte
FileMaker Module und neue Ansätze | Karsten Risseeuw
FileMaker Lieblinge
- Platzhalter auf Komfortkurs
Holger Darjus
Tipps & Tricks
- SQL im Einsatz
Tipps zur Funktion „SQLAusführen“ | Arnold Kegebein
Plugins
- QuickList
Schnelle Listen für FileMaker | Christian Schmitz
Gewusst wie
- Mengenabgleich
SQL-Abfragen mit IN SET-Syntax | Arnold Kegebein
FileMaker & Recht
- Forderungsmanagement
Inkasso leicht gemacht | Christoph Kluss
Gewusst wie
- Stoppuhr
Eine Eigene Funktion für die Zeitmessung | Arnold Kegebein
Neuigkeiten, Kleinanzeigen, aktuelle Versionen, Adressen, Stammtische

Xojo Inc. just released a new version of Xojo, our favored development tool. Again over 100 bugs fixes, a few new things and a couple of changes. The big news is 64bit support for the iOS target, so apps can continue to be available through Apple's app store. Since early February Apple requires 64bit support for applications published to the App Store.
The other new things are an updated icon editor which allows 1024 Pixel big icons. Than there is a new preferences on whether the filter text field should wait before searching for you to finish typing. Structure alignment can now go natively and there is a new TargetARM constant which is true for iOS building.
The plugin SDK has been updated to reflect the new text data type. We updated MBS Plugin for version 15.0 to handle them correctly, but continue to use strings for most functions. If you need a function to take a text and avoid conversion to string, please contact us. There is currently no support for auto data type in the SDK.
I'm happy about a few of the bug fixes. For example the bug with compiler reporting function call as ambiguous if there is a byref in the overloaded method is gone. Also fixed are bugs for comparing numbers to constants and another bug about comparing unsigned integers. Bugs in the compiler are always catastrophic as you get crazy when your code is correct and still produces wrong errors. Those two are bad, but had workarounds and probably 99% never run into them.
A couple of fixes for the new framework help like the fixed memory leaks or broken timers on Windows. Welcome is also the faster sorting, the fix for IDE scripting to build console applications and the fixes on the web framework.
SQLite got updated from 3.8.5 to 3.8.8. This includes a lot of improvements on SQLite itself. Like support for hexadecimal integer literals, the new likely function and a couple of speed optimizations. Beside that over 20 bugs have been fixed in SQLite alone. See
SQLite Release History
So if you have been using Xojo 2014, you should checkout if 2015r1 is not the better release. If you are still using Real Studio 2012, it may be time to reevaluate Xojo again and see if 2015r1 release is okay for you to move on. Later this year you may need to move anyway if your clients ask for 64-bit support.
Did you notice we now have four blog domains?
If you visit the blog here regularly or read the RSS feed, you can now filter to FileMaker and/or Xojo topics.
mbsplugins.de - all blog entries
mbsplugins.de/filemake - all FileMaker blog entries
mbsplugins.de/xojo - all Xojo blog entries
Maybe that helps some of our clients which don't use Xojo or FileMaker to filter out the other development tool.

New in this prerelease of the 5.0 plugins:
- Added WebView.GetFormattedText for Mac and added formatted text parameter to WebView.SelectedText function.
- Fixed problem with QuickLook feature in Open dialogs not working due to MBS plugin's code for QLPreviewPanel functions.
- Fixed bug in Dialog buttons.
Download at
monkeybreadsoftware.de/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.

New in this prerelease of the 15.0 plugins:
- Added more properties to CTFontMBS and CTFontDescroptionMBS
- Added NSStatusBarButtonMBS class.
- Fixed QuickTimePresentMBS function.
- Added TimeOut Parameter for SSHSessionMBS constructor.
- Fixed problem with MacHIDMBS not loading on older OS X versions.
- Changed SQLCommandMBS to allow again setting connection to nil.
- Added parameter for compression to PNGWriterMBS.SetHeader.
- Added JPEGExporterMBS.DCTMethod property.
- Updated LCMS2 to 2.7fc1 and a few fixes.
- Added CIImageMBS.imageByApplyingOrientation function.
- Added handle properties to MacHIDMBS class.
- Fixed memory leak in JSONMBS when adding objects (Circle reference between parent and child).
Download:
macsw.de/plugin/Prerelease. Or ask us to be added to our shared Dropbox folder.

10th February 2015 - Monkeybread Software develops for years the MBS FileMaker Plugin. The current development version 5.0pr10 includes now over 3000 functions, a new record!
Shortly we release our Version 5.0. New in this version are global hotkeys for Mac and a lot of improvements for TAPI, WebView, DynaPDF, Barcode, GraphicsMagick, Excel, ListDialog, Audit and SystemInfo functions. Our Menubar functions allow you to run FileMaker menu commands by script. Using FM.RunDataDesignReport function you can even automate generating a database design report. If you have a typing mismatch in a function name our plugin will now suggest a correction. And if some error happens in a script, the plugin can show a notification on OS X with the error message, so you notice script problems easier.
Many FileMaker developers trust the MBS Plugin. Normally new developers find the MBS Plugin due to an interesting function. Often while researching for a client if a possible feature can be added to a solution in FileMaker. Once the developer knows how powerful our plugins is, they enjoy using it and find new functions regularly.
The development of MBS Plugin startet 2006 with early versions. Soon in 2010 we had version 2.0 with over 400 functions. End of 2012 we published version 3.0 with already 1375 functions. Early 2014 with version 4.0 we got 2298 functions. In the last year alone we added over 700 functions for you. No wonder, as we have a constant stream of feature requests coming in from our plugin users.
Especially our free extras like the line numbers and syntax highlighting in script editor brought us a lot of new clients in the last two years.
Nickenich, Germany (February 10th, 2015) -- Monkeybread Software releases version 1.6 of the MBS Updater Kit
The MBS Updater Kit helps you in adding an automatic update feature to your application.
Version 1.6 improves the Kit for use with Xojo.
- Crossplatform update engine for Mac OS X and Windows.
- Full Source code access.
- Using Sparkle on Mac OS X for updating and our own code for Windows.
- Includes all code and help to setup Sparkle for Windows.
- Includes script file for Inno Setup engine. (you can use others if you like)
- Using digital signatures on Mac and MD5 Checksum on Windows to ensure download integrity.
- Includes generator for XML file for your server and code to parse this file and find newer versions.
New in Version 1.6:- Updated for Xojo.
- Fixed Patch App to use Intel instead of Universal for the build folder name.
- Fixed UpdaterEngine to better detect if version is newer or older.
- Updated Sparkle to version 1.6.1
Our Updater Kit requires Real Studio 2011 or newer and a licenses for various MBS Plugins. (Complete Set recommended)
The Updater Kit is available for $99 USD or 79 Euro (+VAT if needed).
You can learn more and try the sample application on our
website.
First when you plan to use the XL functions, be aware that you will need the license for our MBS plugin. In addition you need licenses for the
LibXL library. Our plugin uses this library to actually perform the functions.
LibXL is sold separately for $199 per platform and you only buy one license for you as the developer, independent of the number of clients.
Initialize
Before using the XL functions, it is important to initialize the XL functions. Best practice is to check result of MBS("
XL.IsInitialized") function. If result is not 1, you need to initialize. For that you first need to locate the libxl files. Our examples include library files for Mac and Windows. We have libxl.dylib on Mac for 32 and 64 bit in one file. For Windows libxl.dll is the 32bit and libxl64.dll is the 64bit file. On Windows you can pass path to libxl.dll and if FileMaker is running as 64bit application, the plugin will add the 64 automatically and find the 64bit library. The example databases find the library in the same folder as the example database automatically. On a Server you normally copy the libxl files to the server and hard code the native path, e.g. "/Libary/FileMaker Server/libxl.dylib". So the initialization can look like this:
If [MBS("
XL.IsInitialized") ≠ 1]
Set Variable [$r; Value:MBS( "
XL.Initialize"; "/Library/FileMaker Server/libxl.dylib")]
End If
Create book
Next we have to create a new book. The plugin uses reference numbers to handle several books in memory at the same time. It is important you reference your book with a variable in the whole script and release it on the end. To create a workbook, please call
XL.NewBook function. Here you need to decide if you plan to save later as XML based or binary excel file. We pass 0 for the normal xls file format:
Set Variable [$book; Value:MBS( "
XL.NewBook"; 0 )]
After we got our book, we add a sheet labeled "Addresses". We get back the sheet reference number which is zero for first sheet:
Set Variable [$sheet; Value:MBS( "
XL.Book.AddSheet"; $book; "Addresses")]
Write data
Our main loop here loops over the records in our test table. Starting with first record we move one row at a time and one record a time. Inside the loop we set cell text for each cell in current row and fill them with values from the record. As you see we have to pass book reference number, sheet number, row number and column indexes. We define the columns ourself here.
Go to Record/Request/Page [First]
Loop
Set Variable [$r; Value:MBS( "
XL.Sheet.CellWriteText"; $book; $sheet; $row; 0; Export records::First Name)]
Set Variable [$r; Value:MBS( "
XL.Sheet.CellWriteText"; $book; $sheet; $row; 1; Export records::Last Name)]
Set Variable [$r; Value:MBS( "
XL.Sheet.CellWriteText"; $book; $sheet; $row; 2; Export records::Street)]
Set Variable [$r; Value:MBS( "
XL.Sheet.CellWriteText"; $book; $sheet; $row; 3; Export records::Zip)]
Set Variable [$r; Value:MBS( "
XL.Sheet.CellWriteText"; $book; $sheet; $row; 4; Export records::City)]
Set Variable [$r; Value:MBS( "
XL.Sheet.CellWriteText"; $book; $sheet; $row; 5; Export records::Country)]
Set Variable [$r; Value:MBS( "
XL.Sheet.CellWriteText"; $book; $sheet; $row; 6; Export records::Phone)]
Go to Record/Request/Page [Next; Exit after last]
Set Variable [$row; Value:$row + 1]
End Loop
Finish
On the end, we save to a container. For that we use the Set Field script step. the plugin function
XL.Book.Save returns the container value with the Excel file inside. We pass a file name for the container to give it a name which FileMaker uses to export the field content later.
Set Field [Export records::File; MBS("
XL.Book.Save"; $book; "test.xls")]
Finally we have to release memory and close book. So the
XL.Book.Release will clear memory:
Set Variable [$r; Value:MBS("
XL.Book.Release"; $book)]
More?
This is of course a very easy example. It does not create fonts or formats. Maybe you want to check other example databases coming with plugin if you like to learn how to create formats, fonts and add images to Excel files.
As all those social services (Facebook, Twitter, Google Plus) like to know where users surf. All the websites with like buttons create a log entry in their logs and include a reference to the profile, if you are logged in. This way they can track you surfing over the web.
One thing I do myself for a long time is to delete cookies automatically. With
Cookies app from Russell Gray. I have 20 cookies on my white list like the Xojo and FileMaker forums auto login. But all others cookies are automatically deleted when I close the browser. This way I'm a new client each time when I visit google web search or browse amazon.
Now I have several browsers: Safari, Firefox and Google Chrome. For my normal surfing I use Safari while the social networks reside in Chrome. They can set their cookies and I have auto login, but they don't monitor me when I use Safari to surf the web.
Finally I disabled plugins. No flash security problems if Flash is disabled. And as YouTube now uses HTML5 by default, that's not even a problem for normal surfing. And of course plugins are just a few clicks away if needed. But with new plugin per website control in modern browsers, you should have plugins disabled for all websites by default. Only enable them where you need. It is amazing how many websites want to use Flash only to track you!
Pro license is required for the following functions:
- BeginTransparencyGroup
- ConvertColors
- Create3DAnnot
- CreateSoftMask
- FlattenForm
- GetPageText
- ImportPage and ImportPageEx
- ParseContent
- RenderAnnotOrField
- RenderPage
- SetCMapDir
- SetExtColorSpace, SetExtFillColorSpace and SetExtStrokeColorSpace.
- SetUseGlobalImpFiles
Lite is required for:
- AddRenderingIntent and AddRenderingIntentEx
- CreateFormFields
- CloseFileEx
- ConvertEMFSpool
- CreateCollection
- CreateExtGState
- InsertMetafile and InsertMetafileEx
- OpenImportBuffer, OpenImportFile and OpenImportStream
- SetPDFVersion for PDF/A and PDF/X
And all functions relaying on those functions internally.

New in this prerelease of the 15.0 plugins:
- Adjusted some functions for text data type.
- Fixed bug in UnixPathMBS.
- Added XLSheetMBS.ReadDate and XLSheetMBS.WriteDate.
- Fixed bug in PictureMBS destructor. Introduced in pr6.
- Recompiled with newer SDK.
- Updated LCMS2 to 2.7fc1.
- Updated DynaPDF to version 3.0.38.111.
- Added ABAccountMBS and related classes.
- Changed SQLDatabaseMBS RecordSet to return RowsAffected for RecordCount. Seems to be right for MySQL with Scrollable=True.
- Fixed bug with dialog functions not showing alternate button.
- Fixed bug in NotificationCenterMBS class.
- Added NSViewControlMBS control.
- Added more parameters for TwainMBS.TransferProgress event.
- Added WinHIDMBS.GetInputReport and WinHIDMBS.SetOutputReport.
- Added TwainMBS.Imagelayout.
- Changed JSONMBS, so with parse error you still get the content we parsed.
Download:
macsw.de/plugin/Prerelease. Or ask us to be added to our shared Dropbox folder.

We just got notice about the upcoming dotfmp conference where you can meet me:
Berlin, Germany - 6 February 2015
We are pleased to announce the 3rd edition of THE pan-European Unconference for FileMaker Developer, .fmp[x]Berlin 2015.
Taking place from 4 − 6 June 2015 in the Hotel Upstalsboom Berlin, some of the finest brains of the European Software-Developer community will be meeting on a personal basis to exchange ideas and share knowledge.
This high-level content, all about the latest versions of the FileMaker Platform, will be accompanied by some special features that are not available elsewhere!
In terms of award-giving, unconference regulars will be pleased to know that the omnipresent 'dotfmp award for the longest journey’ will be better than ever. This not-to-be-taken-too-seriously event will continue to offer prizes and merriment. It will be joined by the "dotfmp Certification Exam for FileMaker Pro 2”, a nostalgic trip harking back to the beginning of software development. And, last but not least, the "Developer Passport” will honour the efforts of the most-dedicated developers in a very different way!
All this is framed by a very special supporting program. Starting on Wednesday 3rd, there will be the chance to hangout in one of the oldest beer gardens in Berlin. Delegates will be able to visit specialty restaurants on Friday 5th and to enjoy a Thuringian Barbecue on Saturday 6th. Closing, on Sunday, 7th is left free for sight-seeing to the many famous sights places and sights in Berlin.
.fmp[x]Berlin has been growing by 25% each year and has become an inherent part of the yearly schedule of the most important developers across the world. As such, this is the first time we have to limit the seats to a maximum of 80 attendees. In order to secure a place at this high-level event in one of the most exciting cities, register on the website now!
For more Information visit: www.dotfmp.com

Paul Lefebvre, the Xojo Developer Evangelist, got a Xojo app in the App Store:
TipVue, essentially the Tip Calculator example app included with Xojo, was submitted to the App Store a little over a week ago. It was just approved by Apple today and is now available in the App Store.
TipVue on the Apple App Store
It's free and should be appearing in all countries throughout the day.
The great news as it proofs that an Xojo made app can pass the review and made available on the store. Now it's up to you to make more apps with Xojo!

New in this prerelease of the 5.0 plugins:
- Added functions for SerialPort to get/set parity and stop bits.
- Fixed bug in SerialPort.SetDataBits function.
- Added 40 new DynaPDF functions.
- More XL functions return proper error messages.
- Added XL.Date.DoubleToTimeStamp, XL.Date.TimeStampToDouble, XL.Sheet.CellReadDate and XL.Sheet.CellWriteDate functions.
- Updated DynaPDF to version 3.0.38.111.
- Added HotKey functions for Mac.
- GraphicsMagick functions taking color now also allows taking Random, RandomDark and RandomLight as parameter.
- Added GMImage.FindColorInRow and GMImage.FindColorInColumn.
- Added Files.DiskInfo function.
- Fixed drop area image, so you can set an image again with DragDrop.SetImage function.
- Fixed drop areas, so they don't move if you change window size.
- Added GMImage.MultiplyChannel function.
- Fixed problem with Text.TextToHTML not encoding all characters correctly.
- Fixed problem in DynaPDF.InsertImage and DynaPDF.InsertImageFile.
Download at
monkeybreadsoftware.de/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.

The German
Mac & i magazine issue 1/2015 includes an article about Xojo with iOS support.
Only one and a quarter page and it didn't make it on the title, but still it may attract people to checkout Xojo.
For our German users living near Koblenz, there came the announcement for the next meeting:
Ein herzliches Hallo an alle FileMaker Freunde,
es ist wieder soweit! Am Donnerstag, 5. Februar 2015, treffen wir uns zum Koblenzer Stammtisch ab 19:00 Uhr bei Thomas Jaeger.
Aktueller Ort:
Orthopädietechnik Jaeger
Hermsdorferstraße 3
56112 Lahnstein
Telefon: 0 26 21 / 6 23 40
Aktuelles Thema: Anbindung der Telefonanlage an das hausinterne FileMaker System
Eigene Ideen, Konzepte oder gar Lösungen beleben lockeren Erfahrungsaustausch und erquickendes Fachsimpeln. Genießen Sie den Abend und machen Sie mit! Bitte benutzen Sie den vorderen Eingang. Gerne kommt der Stammtisch auch zu Ihnen und Ihrer FileMaker Entwicklung :)
Fragen sowie Anregungen einfach an filemaker@interact.de senden. Freunde und Kollegen sind wie immer gern gesehen und werden auf Wunsch in den Verteiler aufgenommen.

New in this prerelease of the 15.0 plugins:
- Updated LCMS2 to 2.7rc1.
- Added CopyPixelsMemory function for GM16ImageMBS and GMImageMBS.
- Added LDAP* classes.
- Updated DynaPDF to version 3.0.38.109.
- Fixed bugs on TAPI classes.
- Fixed bugs in DirectorySizeMBS class.
- Improved DirectorySizeMBS on Windows to detect reparse points (and ignore them).
- Added BarcodeGeneratorMBS.EANChecksum and BarcodeGeneratorMBS.ISBNChecksum functions.
- Deprecated SpeechChannelMBS, SpeechMBS and VoiceMBS. Apple deprecated it for OS X 10.8 and it stopped working in OS X 10.10. Please use NSSpeechSynthesizerMBS class instead.
- Fixed bugs in DynaPDFMBS Highlight functions.
- Added SQLDatabaseMBS.LastStatement and SQLConnectionMBS.LastStatement to see what SQL was run most recently.
- Added cairo_surface_mark_dirty for cases we edit picture on linux.
- Added ABPeoplePickerViewControlMBS and ABPersonViewControlMBS.
- Fixed EncodingToHTMLMBS, broken in pr8.
Download:
macsw.de/plugin/Prerelease. Or ask us to be added to our shared Dropbox folder.

New in this prerelease of the 5.0 plugins:
- Added Path.FileURLToFilePath and Path.FilePathToFileURL functions.
- Added parameters to DynaPDF.GeneratePreview to query image.
- Trace command now also logs Audit results. Also SQL/Evaluate errors while Audit are written to Console/DebugView.
- Updated DynaPDF to version 3.0.38.109.
- Added Webview.SelectedText function.
- Added Barcode.EANChecksum and Barcode.ISBNChecksum functions.
Download at
monkeybreadsoftware.de/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.