MBS Filemaker Plugin, version 3.5pr9

New in this prerelease of the 3.5 plugins:
  • Added Barcode.DrawBarcode to draw vector graphics barcode into PDF.
  • Added Barcode.UPCChecksum to calculate.
  • Added SyntaxColoring.GetFontSize and SyntaxColoring.SetFontSize functions to set font size in script editor on Mac.
  • Changed PNG library to return warning on invalid SRGB ICC Profile instead of error.
  • Fixed bug in Barcode.Detection which can lead to a crash.
Download at monkeybreadsoftware.de/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.

What happened here?

This is FileMaker 12.

Do you see the difference to normal script editor?

MBS Filemaker Plugin, version 3.5pr8

New in this prerelease of the 3.5 plugins:
  • Added JPEG 2000 support for GraphicsMagick on Mac OS X (was already there on Windows).
Download at monkeybreadsoftware.de/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.

Waiting for 64bit

For years we are waiting now for 64bit support in both Xojo and FileMaker. And I get plenty of people asking for features to be added to plugins which will only work once we have 64bit support:
  • Use newer Mac OS X frameworks like MapKit, EventKit, Social, Accounts and others. All the new goodies from Apple require apps which use 64bit.
  • Use more memory, e.g. raster huge poster PDFs in dynaPDF to 300 dpi bitmaps which easily needs more than 4 GB of memory.
  • Use newer VLC library with our MBS VLC Plugin. With version 2.1 VLC is 64bit only, so we can't load the libraries.
  • On Linux with 64bit, we need to install 32 bit compatibility libraries. But not every lib is available there, so some things will not work.
  • For database access (e.g. ODBC drivers), we already face the problem, that often 64bit only library comes by default and users have trouble getting 32bit one installed. Especially if people have 64bit Windows and create a ODBC data source with 64bit driver and our 32 bit app does not see it.
  • Use faster 64 bit math. But both in Xojo and FileMaker this will not make a big difference as number crunching is normally not a bottleneck in our solutions.
So we do hope FileMaker and Xojo will get this done next year and provide us with a stable 64bit version of their software, so we can add all this nice features.

PS: FileMaker 12 has already a 64bit server for CWP.

MBS Filemaker Plugin, version 3.5pr7

New in this prerelease of the 3.5 plugins:
  • The highlighting of variable names being undeclared is now off by default and can be enabled by SyntaxColoring.CheckVariableDeclaration.Enable command.
  • Added DynaPDF orientation functions.
  • Added Files.ReadFile function.
  • Added transparent option to Barcode.Generate function.
Download at monkeybreadsoftware.de/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.

DynaPDF Christmas Sale

DynaForms runs a DynaPDF sale for Christmas:

We wish all our customers Merry Christmas and a successful new year.
As a thank you for the past 11 years, you get 30% Christmas discount
on everything till the end of the year.

For orders by invoice or Paypal, we apply the discount automatically. For orders through Share-it, please use the coupon code DynaPDF. Also take the chance to order updates and upgrades with this discount. We can sell updates up to 5 years in advance if you like. And of course licenses are per developer, so if you got a new coworker, you can now use the discount for a new license.

Please check our latest plugins. With 13.5pr6 Xojo and Real Studio plugins you can even add vector graphics barcodes to your PDFs. And if you like to use reporting in Xojo, you can also check out BKeeney Shorts. There you can use our DynaPDF Plugin for PDF output.

MBS Filemaker Plugin, version 3.5pr6

New in this prerelease of the 3.5 plugins:
  • Added Barcode.Detect function.
  • Added App.GetProcessPath function.
  • Fixed bug in SQL plugin with setting text parameter to SQLite prepared statement.
  • Added Files.WriteFile function.
Download at monkeybreadsoftware.de/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.

MBS Filemaker Plugin, version 3.5pr5

New in this prerelease of the 3.5 plugins:
  • Added caching for undeclared variables detection to make it faster.
  • Improved detection of undeclared variables in script editor.
  • Added Barcode.Generate function.
  • Added PrintDialog functions to control printer dialog on Mac. (print to specific printer and print to PDF)
  • Added more calendar functions related to Alarms and Attendees (see new example database).
  • Fixed bug with Zip file creation. Finder now unpacks them again.
Download at monkeybreadsoftware.de/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.

FileMaker crashing

Did you see FileMaker crashing?
Well, on Mac the crash reports can actually tell you where the problem may be. For example we sometimes have crash reports like this:

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib     0x97c9d952 __pthread_kill + 10
1   libsystem_pthread.dylib     0x971a2167 pthread_kill + 101
2   libsystem_c.dylib     0x94d6540c __abort + 187
3   libsystem_c.dylib     0x94d65c8e __stack_chk_fail + 233
4   com.apple.CoreServices.CarbonCore     0x946aa4dc ConvertFromUnicodeToNormalized + 3023
5   com.apple.CoreServices.CarbonCore     0x9469cae2 ConvertFromUnicodeToTextImplementation + 678
6   com.filemaker.support.framework     0x027b7d4c Unicode::ConvertToUTF16(unsigned short*, unsigned long*, char const*, unsigned long, unsigned long*, Unicode::Encoding, Unicode::Composition) + 556
7   com.filemaker.support.framework     0x027b7d9c Unicode::ConvertToUTF16(unsigned short*, unsigned long*, char const*, unsigned long, Unicode::Encoding, Unicode::Composition) + 60
8   com.filemaker.support.framework     0x0279991c Draco::TextBuffer::ConvertFromNonUnichars(char const*, unsigned long, Unicode::Encoding) + 316
9   com.filemaker.fmwrapper.framework     0x19ca76dd FM_Text_AssignWithLength + 93

Here a plugin calls FM_Text_AssignWithLength to assign some text string to a text object in the plugin API. Now if you assign a normal text string, you provide an encoding hint and FileMaker will do some text conversion. And right there in the framework, the call to ConvertFromUnicodeToNormalized will overwrite the stack and cause the app to be aborted.

One of the reasons so far has been that invalid UTF-8 character sequences can cause this buffer overrun.
To fix the MBS Plugin now checks all UTF-8 marked text to have valid sequences.

Controlling the Print Dialog in FileMaker for Mac

This week, I got an idea on how to control the print dialog in FileMaker. So we now can control there a few features like selecting which printer should print. And we can define in a script that we like to print to PDF and provide the destination path. Also we can automatically dismiss the dialog with OK so the user doesn't see it.
And voila we have on Mac another way to generate a PDF from a layout without user interaction :-)

Comes soon with 3.5pr5!

Detection of undeclared local variables in FileMaker scripts

Yesterday at the FileMaker meeting in cologne we had a nice idea. The plugin could check if you declared variables in your script before you use them.
So now we mark lines red where you use a variable name we don't see in the lines above in the same script. It was a lot of work to get this working in all the languages, but as you see below on the screenshots, it's working fine now.

Chinese traditional and simplified:
(more)

FileMaker Stammtisch Koblenz am Donnerstag, 14. November 2013

(German speaking FileMaker meeting in Koblenz)

Am Donnerstag, 14. November 2013, treffen wir uns zum Koblenzer Stammtisch ab 19:00 Uhr in gemütlicher Runde.

Aktuelles Thema: Rückblick auf die FileMaker Konferenz 2013 - was beschäftigt den Entwickler ...

Eigene Ideen, Konzepte oder gar Lösungen beleben lockeren Erfahrungsaustausch und erquickendes Fachsimpeln. Genießen Sie den Abend und machen Sie mit!

Treffpunkt ist das Weindorf Koblenz in 56068 Koblenz, Julius-Wegeler-Straße 2, Telefon: 0261/1337190. Das Weindorf befindet sich nahe dem Schloss direkt am Rheinufer. Aus der Altstadt erreichen Sie es in wenigen Gehminuten. Es werden allerlei lokale Gaumenfreuden (auch kleinere Leckereien) geboten.

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.

MBS Filemaker Plugin, version 3.5pr4

New in this prerelease of the 3.5 plugins:
  • Fixed bug with SQL Plugin when reading blob values. (introduced in pr3).
  • Changed DynaPDF functions to take new first parameter with the PDF Reference. This way we can make the plugin thread safe for FileMaker server and you can edit multiple PDFs at the same time. You need to call DynaPDF.New to get a new PDF reference and pass it to all functions. Finally call DynaPDF.Release to free memory.
  • Added DynaPDF.Release and DynaPDF.New functions.
  • Fixed issue with GraphicsMagick introduced with pr3.
Download at monkeybreadsoftware.de/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.

Codesign FileMaker 12v5 Runtime on Mavericks

You can code sign a runtime on Mavericks. But you have to do more work than you might expect:
  • You need to fix the frameworks and include the missing symlinks codesign misses.
  • You have to remove some PPC only libraries to have codesign not complain about them not being signed.
  • You can remove some PPC code (like our Runtime Shrinker app does).
  • You can remove duplicate libraries (like our Runtime Shrinker app does).
  • You code sign each of the frameworks.
  • Than you code sign the dylib.
  • Finally you sign the app.
We put together a shell script for finishing a runtime app. It does all of the above tasks for FileMaker 12 runtimes. You need to adjust the script. Please open it in a text editor (BBEdit, Textwrangler or similar) and change the path to your runtime app, the app name and the name of your certificate. Than run it by dropping it in a terminal window and press return to run. If the script works, the app is fully signed.

You can verify that by running in Terminal running "codesign -v -v " plus path to the app.

Our final terminal script: See MBS Plugin download.

MBS Filemaker Plugin, version 3.5pr3

New in this prerelease of the 3.5 plugins:
  • Added SSL socket methods for our socket functions.
  • Updated SQLAPI++ 4.1.2.
  • Functions returning UTF-8 text not validate the UTF-8 in order to avoid FileMaker crashing with invalid UTF-8 characters.
  • First plugins build with Mac OS X 10.9.
  • Added new RichText functions to also write RTF/Doc files on Mac.
  • Fixed bug in writing zip archives on Windows. Archives were bloated/corrupt.
  • Now checking better which window needs line numbers and colored script steps. Please report if a window misses colors or needs colors.
  • Added SyntaxColoring.LineNumbers.GetColor and SyntaxColoring.LineNumbers.SetColor.
Download at monkeybreadsoftware.de/filemaker/files/Prerelease/ or ask for being added to the dropbox shared folder.

Archives

Mar 2024
Feb 2024
Jan 2024
Dec 2023
Nov 2023
Oct 2023
Sep 2023
Aug 2023
Jul 2023
Jun 2023
May 2023
Apr 2023
Mar 2023
Feb 2023
Jan 2023
Dec 2022
Nov 2022
Oct 2022
Sep 2022
Aug 2022
Jul 2022
Jun 2022
May 2022
Apr 2022
Mar 2022
Feb 2022
Jan 2022
Dec 2021
Nov 2021
Oct 2021
Sep 2021
Aug 2021
Jul 2021
Jun 2021
May 2021
Apr 2021
Mar 2021
Feb 2021
Jan 2021
Dec 2020
Nov 2020
Oct 2020
Sep 2020
Aug 2020
Jul 2020
Jun 2020
May 2020
Apr 2020
Mar 2020
Feb 2020
Jan 2020
Dec 2019
Nov 2019
Oct 2019
Sep 2019
Aug 2019
Jul 2019
Jun 2019
May 2019
Apr 2019
Mar 2019
Feb 2019
Jan 2019
Dec 2018
Nov 2018
Oct 2018
Sep 2018
Aug 2018
Jul 2018
Jun 2018
May 2018
Apr 2018
Mar 2018
Feb 2018
Jan 2018
Dec 2017
Nov 2017
Oct 2017
Sep 2017
Aug 2017
Jul 2017
Jun 2017
May 2017
Apr 2017
Mar 2017
Feb 2017
Jan 2017
Dec 2016
Nov 2016
Oct 2016
Sep 2016
Aug 2016
Jul 2016
Jun 2016
May 2016
Apr 2016
Mar 2016
Feb 2016
Jan 2016
Dec 2015
Nov 2015
Oct 2015
Sep 2015
Aug 2015
Jul 2015
Jun 2015
May 2015
Apr 2015
Mar 2015
Feb 2015
Jan 2015
Dec 2014
Nov 2014
Oct 2014
Sep 2014
Aug 2014
Jul 2014
Jun 2014
May 2014
Apr 2014
Mar 2014
Feb 2014
Jan 2014
Dec 2013
Nov 2013
Oct 2013
Sep 2013
Aug 2013
Jul 2013
Jun 2013
May 2013
Apr 2013
Mar 2013
Feb 2013
Jan 2013
Dec 2012
Nov 2012
Oct 2012
Sep 2012
Aug 2012
Jul 2012
Jun 2012
May 2012
Apr 2012
Mar 2012
Feb 2012
Jan 2012
Dec 2011
Nov 2011
Oct 2011
Sep 2011
Aug 2011
Jul 2011
Jun 2011
May 2011
Apr 2011
Mar 2011
Feb 2011
Jan 2011
Dec 2010
Nov 2010
Oct 2010
Sep 2010
Aug 2010
Jul 2010
Jun 2010
May 2010
Apr 2010
Mar 2010
Feb 2010
Jan 2010
Dec 2009
Nov 2009
Oct 2009
Sep 2009
Aug 2009
Jul 2009
Apr 2009
Mar 2009
Feb 2009
Dec 2008
Nov 2008
Oct 2008
Aug 2008
May 2008
Apr 2008
Mar 2008
Feb 2008