
New in this prerelease of the 5.1 plugins:
- Marked a lot of functions to not be available on server due to FileMaker Server not performing Script calls on the server.
- Added TimeOut option for Socket.Connect.
- Tracing script calls now shows also name of current script, file, user and host if available.
- Fixed ZipFile.WriteText function. Now text is again parameter 1 and not 2.
- Added functions FM.CurrentThreadID, FM.IsMainThread and FM.MainThreadID.
- Improved copy script text button. Should not copy the list of available script steps.
Download at
monkeybreadsoftware.de/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.
We'll have a meeting in Dallas (Texas) for Monday, 27th April 2015 with local FileMaker developers.
If you are using FileMaker and you are in the area, maybe you want to join us?
We'll chat about what's new in the FileMaker world, upcoming developer conference and of course our MBS Plugin.
The meeting will take place in a local restaurant, probably somewhere between Dallas and Fort Worth.
Participation is free, except the cost of your own food and beverage.
If you like to join, please email me, so we can reserve the right number of seats.
The early bird offer ends in a few days, so be quick if you like to join the
FileMaker Developer Conference in Las Vegas.

MBS will be present with a booth, so visit us there!

New in this prerelease of the 5.1 plugins:
- Added FM.CurrentScriptID, FM.ScriptNameForScriptID and FM.ScriptIDForScriptName functions.
- Updated LCMS to 2.7.
- Added ListDialog.AddSQL to add list items via SQL.
- Added grouping to ListDialog.
- Added DynaPDF.SysFontInfo and DynaPDF.FontInfo functions.
- Added DynaPDF.SetFieldFont and DynaPDF.SetFieldFontEx functions to support asian characters in form fields.
- Upgraded Xcode to version 6.2
Download at
monkeybreadsoftware.de/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.
As you know we have
list dialog functions. Now for next prerelease with headers for grouping.
on Mac:

on Windows:

The style is default style from OS.
In recent plugin version we got new dictionary functions. Those can be used to quickly lookup some value for a key value. As the plugin preserves the original data type (e.g. containers), you can really use it to store anything very well. For example if you reference in your app some ID with a name, you can load all those values in a dictionary. New functions in version 5.1 will allow to fill it with SQL command easily.
For now we want to show you how to use it for parameter passing to scripts. FileMaker allows you to pass one script parameter and our idea is to pass the dictionary reference number as parameter instead of values. So in calling script we call Dictionary.Create to create a new dictionary. Than we fill in a few parameters with the Dictionary.SetValueForKey function. Finally we can pass our variable to the target script with the reference number.
#Create new Dictionary
#
Set Variable [$param; Value:MBS( "Dictionary.Create" )]
#
#Fill in parameters
#
Set Variable [$r; Value:MBS( "Dictionary.SetValueForKey"; $param; "text"; Test Table::TextField )]
Set Variable [$r; Value:MBS( "Dictionary.SetValueForKey"; $param; "number"; Test Table::NumberField)]
#
#Call script and pass ID
#
Perform Script [“Other Script”; Parameter: $param]
For the called script we have code like below. We first query the script parameter into local variable. Than we query all the values and put them in variables in the new script. Finally we have to free the dictionary.
#get dictionary reference number
#
Set Variable [$param; Value: Get(ScriptParameter) ]
#
# get some values back in variables
#
Set Variable [$text; Value: MBS( "Dictionary.ValueForKey"; $param; "text" ) ]
Set Variable [$number; Value: MBS( "Dictionary.ValueForKey"; $param; "number" ) ]
#
# and free memory
#
Set Variable [$r; Value: MBS("Dictionary.Release"; $param)]
As you see this needs some more work in the scripts. But we can make it easier. The calling script can use the function Dictionary.SetVariables (new in 5.1). This function uses the keys and values in dictionary for the variables. So if there is a key named "Company", we create a variable called $Company and fill the value. So you automatically get the variable names. Also the Dictionary.Create function now takes key/value pairs, to easily fill a dictionary in a script. See the following script:
Set Variable [ $param; Value: MBS( "Dictionary.Create"; "text"; Test Table::TextField; "number"; Test Table::NumberField) ]
Perform Script [ “Script Called Copie” ; Parameter : $param ]
We create a dictionary with passing in variables as name and value. Than we pass the dictionary as parameter. The called script looks like this:
Set Variable [ $r; Value: MBS("Dictionary.SetVariables"; Get(ScriptParameter); 1) ]
We get back those variables and passed them all in two lines from one script to other script. No more conversion to text or storing in global fields, even for containers. Try it! You'll love it.

New in this prerelease of the 5.1 plugins:
- Added RegEx.FindMatches function.
- Added inline option for SendMail.AddAttachmentFile and SendMail.AddAttachmentContainer.
- Added DynaPDF.SetPrinterSettings, DynaPDF.GetPrinterSettings and DynaPDF.GetInPrinterSettings functions.
- Added RichText.WritePDF and RichText.GeneratePDF functions.
- Added parameter to Math.TextToNumber to detect dot or comma for decimal separator.
- Added Dictionary.SetVariables function.
- Added Dictionary.Values, Dictionary.AddSQL, Dictionary.ValueTypeForKey and QuickList.AddSQL.
- Added GMImage.NewImagesFromContainer and GMImage.NewImagesFromFile to split tiff.
- Added XL.CopyContent function to copy content from one XL document to other, useful for converting between XLS and XLSX formats.
- Added Text.CapitalCase, Text.LowerCase and Text.Uppercase with full unicode support.
- Added Plugin.SetPreviewSize function to control preview sizes.
- Changed PDF preview rendering to make smaller previews in faster speed.
- Added parameter for various functions returning PDF containers to disable rendering of JPEG preview: SQL.GetFieldAsPDF, SQL.GetParamAsPDF, WebView.RenderPDF, CURL.GetResultAsPDF, PDFKit.GetPDFPageValue, Files.ReadPDF, Window.AsPDF, Container.DecodeFromBase64, ServiceProvider.Value, CGPSConverter.Convert, PDFKit.GetPDFPagePDF and PDFKit.GetPDFPagesPDF.
- Fixed bug in GMImage.WriteImages function. Now working again.
- Changed FM.ExecuteSQL to return error messages in clear text on error. You can use IsError function to know if it was an error.
- Updated DynaPDF to version 3.0.39.113.
- Added FM.ArgumentCount and FM.Argument functions.
- Fixed GMImage.GetPixelColor to return correct error message if coordinate is out of bounds.
- Fixed bug in JSON.GetObjectName. Reports now an error if index is out of bounds instead of crashing.
- Changed ZipFile.WriteContainer to accept writing empty file.
- Added UnZipFile.UsePassword and ZipFile.UsePassword to encrypt Zip archives.
- Fixed bug in Text.DecodeFromXML and Text.DecodeFromHTML about html entities not being decoded correctly.
Download at
monkeybreadsoftware.de/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.

FileMaker conferences in 2015:
- FileMaker Conférence, French, 25 to 27th May 2015 in Montréal, Canada, see cqdf.ca
- .fmp[x]Berlin, English, 4th to 6th June 2015 in Berlin, Germany, see dotfmp.com
- FileMaker DevCon, English, 20th to 23th July 2015 in Las Vegas, USA, see filemaker.com/developers/devcon/
- FileMaker Konferenz, German, 8th to 10th October 2015 in Hamburg, Germany, see filemaker-konferenz.com
- FileMaker Conference, English/Swedish, 12th to 13rd October in Gothenburg, Sweden, see devconscandinavia.se
Do you know more? Let me know so I can add them to the list.
As you may know we come to Texas for the
Xojo conference in Austin. While we are there, we thought it may be nice to meet some FileMaker developers there. So if you like, we can organize meetings. Simply reserve a table in a restaurant, meet and have dinner together while chatting about FileMaker and plugins.
FileMaker Meeting in Austin
FileMaker Meeting in Dallas
FileMaker Meeting in Houston
We simply offer 3 meetings and see if people are interested. Surveys will be open and once we have a few people for an event, we can decide on the exact date.
On same day, we could of course arrange training or consulting meetings with you in your office to discuss your FileMaker plugin questions.
Location: To be defined. Suggestions welcome.
Cost: Your own meals and drinks.