The answer is: Yes, we can!
And even on Mac, the same new function AVPlayer.FindPlayers looks for players on the current layout. It returns a list of all the players and you can than use our normal AVPlayer functions. Here a screenshot:
Left side macOS, right side iOS simulator.
So we can get the players on current page and there may be several. You can control the player, e.g. pause/play, query time and duration, change rate or volume. Next you can now use AVPlayer.GetAsset to query the asset for the player. There you can query images for videos, metadata and frame rate.
This conference is organized by Egbert Friedrich and takes place from 1st to 3rd June 2017 in Berlin, Germany.
Tomorrow (31st May), you can join us in the Prater beer garden for a nice drink and some shop talk about FileMaker!
Or today at the Xojo meeting.
So we have about half of our users have FileMaker 15. We currently have more users with FileMaker 11 as with FileMaker 16, but that will probably change quickly. As you may expect, we do still support FileMaker versions down to 7 on Windows, but don’t test ancient versions any more (unless someone tells us about an issue).
For FileMaker 16, you can use WebView.SetPreferences function and set developerExtrasEnabled property to 1. Than you can open inspector via contextual menus.
For Xojo you can use WKWebViewControlMBS control for WebKit 2. There we will have a new property developerExtrasEnabled to enable the inspector in the contextual menu.
For Xojo we have the WindowsTaskbarListMBS class to control various things in the task bar. You can show progress and manage tabs there.
For FileMaker we add the Window.SetProgress function. Just call it when you make progress to update the task bar icon.
As of today I know about those events in October:
- FM Summit, Dutch/English, 9th and 11th October 2017 in Leiden, Netherlands, see fmsummit.info
- FileMaker Konferenz, German/English, 12th to 14th October 2017 in Salzburg, Austria, see filemaker-konferenz.com
- FileMaker Scandinavian DevCon, English, 16 and 17th October 2017 in Stockholm, Sweden, see devconscandinavia.se
- FM Conférence, Français/English, 19th and 20th October 2017 in Rouen, Frankreich, see fmconf.com
- FileMaker DevCon, Spanish, 20th to 21st October 2017 in Madrid, Spain, see medium.com
When you look through the examples, you see that I stripped some stuff like accounts, privilege sets and custom menus. And all the MBS function names are links to the documentation pages. The documentation lists the examples for each function, so you can see which example implements which function.
Enjoy it and in a few weeks, search engines will show them.
In order to read it in a browser and for search engines to soon index it, I put the manual online as a webpage version:
Maybe it helps people. From time to time I can update it with current PDF file.
Update: We got links from documentation to the DynaPDF manual pages.
For a recent project I needed to export over 400 FileMaker databases to html reports. But FileMaker is not really scriptable. With FileMaker 16 you need permissions to use AppleScripts per database and that's not practical for this. While FM.RunDataDesignReport is convenient for inside a solution, it's also not applicable for a lot of databases. So I came to use an AppleScript to control FileMaker and click the right buttons for me:
tell application "System Events" to tell process "FileMaker Pro Advanced"
set frontmost to true
tell menu bar item "Tools" of menu bar 1
click menu item "Database Design Report..." of menu 1
click radio button "HTML 1 of 2" of window "Database Design Report"
if (value of checkbox "Automatically open report when done" of window 1) = 1 then
click checkbox "Automatically open report when done" of window 1
click button "Create" of window 1
click button "Save" of window 1
set frontmost to true
keystroke "w" using command down
This script can be called when you have a FileMaker database open. It will trigger menu command to open the Database Design Report dialog and click some options save the html report. Works fine here and I successfully created all those reports.
But maybe you want to take a second look on how long you may wait for bigger JSON data sets. We usually use XML and JSON import/export not for 3 records, but for thousands. We automate data exchange with other services and so we need to process 1000s of records. MBS Plugin functions are built for speed, so we prefer to use the JSON reference numbers. Parse the data once, get a number and query it often. The FileMaker functions do not keep the parsed data and do the parsing for each query. With MBS Plugin we can use reference numbers, so even for building large JSON data sets, you can avoid producing text for each step and parse it again to add the next value.
Finally you need to know that JSONGetElement always returns text. This may be fine first, but can get you in serious trouble later. For example if you take this formula:
GetAsNumber(JSONGetElement ( "[ 10, 20.5, 30]" ; 1 ))
The text returned is "20.5", but you need 20.5 as a numeric value. Because if you later want to process it, you may need a number. Now GetAsNumber will take the "20.5" and convert it to 20.5 on a typical US system. But with German localization, we actually get 205. The dot is ignored as the German functions require a comma as decimal separator. MBS Plugin provides values in the correct types like boolean, numbers and text. If you like, use FM.DataType function to check what type a value has.
|MBS JSON Functions
|FileMaker’s JSON Functions
|Number of functions
|Available in FileMaker Versions
|FileMaker 7 to 16
|FileMaker 16 only
|FileMaker Pro (Advanced)
|FileMaker iOS SDK
|Create arrays and objects
|Parse once, Query often
|JSON Import with field/table creation
|Return data types
|boolean, number or text
|Create Array with 2000 entries
|Get Values from Array with 2000 entries
Your time measurements will vary (and please deactivate Trace log), but in general not parsing and formatting JSON 2000 times in a loop saves a lot of time.
FileMaker's functions are great as a base and certainly help all the beginners getting started with JSON and REST services. If you need more speed or more features, feel free to test our MBS Plugin.
And if you miss something, let me know.
PS: Some of this issues with returning numbers have been improved in 16.0.2 release of FileMaker.
You define the destination. This can be a field or a variable including the number of the repetition. Second option is the name of the function to call. This is either provided as text in quotes or picked from a calculation. The calculation can reference variables and fields, so you can define which function to call with e.g. reading function name from a field.
The next parameters are the actual function parameters. The first four are visible directly in the line, the other ones only if you click the gear. For each parameter you can specify a calculation to query value using fields or variables.
Technically this script step calls the exact same MBS function as before. For us the script step is just a bit of sugar for the script. The plugins can only provide a script step definition on startup and use the given options described in the plugin SDK documentation. We can’t dynamically change the options like presenting a popup menu with components and than a popup with the function in that component. Like CURL and than pick Perform.
As using the new script step breaks compatibility to older FileMaker versions, we will not use it for a few years in our examples until we no longer need to support older versions. But nice to have my plugin finally show up in script step list after 11 years of development. Please try it!
Wer hat Interesse an einem FileMaker Entwicklertreffen im Juni in Nürnberg?
Einfach gemütlich zusammen sitzen und über FileMaker Neuigkeiten, Konferenzen und die täglichen Probleme bei der Softwareentwicklung unterhalten.
Gerne zeige ich auch neue Pluginfunktionen oder helfe bei Problemen mit FileMaker Projekten. Einfach Computer mitbringen und was zeigen.
Bitte an der Umfrage teilnehmen und helfen einen optimalen Termin zu finden: 16. Juni
Bei Interesse bitte bei mir melden.
PS: Berliner Stammtisch am 31. Mai.
(you know all the languages for the menubars?)
I made a couple of little AppleScript apps to launch FileMaker 16 in another language. So I can double click the French one and another instance of FileMaker Pro launches on my Mac with French localization. Please try and let me know what you think about it.
Update: Newer version now for FM 14 and 15, too.
When running on Windows, you can load EMF (enhanced metafile) or WMF and query their size. Than you can decide where to insert them and place them on a PDF page. Of course you can create a PDF page with the size of the WMF bounding box and place your graphic at full size.
If you like to create regularly documents with company logos, you can ask for example to provide them as PDF or WMF and just place them on the document as needed. As your designers when using something like CorelDraw can just export vector graphic as WMF, this is a convenient way to store them on Windows, except directly PDF. Be aware that some applications just embed a bitmap picture in the WMF, which lead to worse quality compared to pure vector graphics.
This requires a DynaPDF Lite license or better. If needed you can use a DynaPDF Pro license to render the PDF to JPEG, PNG or TIFF files.
With GraphicsMagick functions you can convert WMF files to bitmaps, but quality in DynaPDF may be better.
For macOS we just follow the example steps from the Readme coming with MBS Plugins examples in URL Scheme folder. As you can read there, you change the info.plist file of the app. Than you use the URLScheme functions in MBS Plugin to set the default scheme handler. Instead of a FileMaker Pro (which usually is not installed on the clients machines), the runtime will now handle the FMP URLs.
For Windows, the installer for the runtime, registers in the registry the FMP URL scheme and points to the runtime exe file. This requires admin permissions.
In both cases, FileMaker Pro (if installed), won't be the FMP URL handler anymore. So please keep it an option only for clients who need it and have no FileMaker Pro installed!
This can be reverted on macOS by deleting the runtime (or some terminal commands for lsregister). On Windows you can revert it with registry changes or using the FileMaker Pro installer to install over the existing installation.
Fast wie eine FileMaker Konferenz trifft sich hier die FileMaker Gemeinde aus der Schweiz mit Gästen aus umliegenden Ländern zum Stelldichein. Michael Valentin berichtet, was es neues in FileMaker 16 gibt und bei der FIleMaker Cloud.
For a few minutes, before the boat left Zurich. Today I am in Meilen for the FileMaker 16 Event.
Tomorrow night is the Xojo meeting. If anyone here in Zurich area is interested in joining me, drop me a line.
Our new plugin is optimized for FileMaker 16 and provides all the usual features in the latest version of FileMaker. The script workspace again shows the syntax highlighting and allows to search scripts. We added a new MBS script step, so you can easily use plugin functions in your scripts. Of course you can continue with using Set Variable as before and keep compatible to FileMaker 15. You can even yourself define custom script steps in FileMaker using expressions to evaluate with our plugin.
Included with the new plugin version is a plugin for iOS. This is a brand new plugin and allows you to try over 2000 of our functions already for your own solutions built using the FileMaker iOS SDK. We will need to check in the next months how iOS performs and which functions can help you the most. Most of the Webviewer functions already work on iOS, including the preferences functions to enable the developer extras.
For macOS we added a new preferences dialog. There you can toggle all the enhancements we offer for the FileMaker script workspace. And you can enter your license key for storing it in the preferences file with FileMaker. In the script workspace we added new zoom controls, so you can increase font size for your scripts. For popupmenu controls in FileMaker, you can now copy the values via our contextual menus. For calculation dialogs, you can now define a minimum font size, so you easier read them when presenting.
For Windows you can now send emails via the local email client application. This includes sending emails with attachments via Outlook or Thunderbird. Using our new Registry functions you can add, edit and delete registry entries directly from FileMaker.
For CURL we have new functions to setup queries to Amazon Webservices and we provide an example for AWS S3 download and upload. Our plugin provides the authentication based on AWS4-HMAC-SHA256 for the queries, so you can easily integrate several amazon services. With new socket type functions, you can now let CURL connect to an IP and use the connection like any other socket with reading and writing data. CURL encapsulates all the IP protocols (IPv4 and IPv6), proxies and SSL options for you. Finally we allow you to use the system root certificates on macOS and Windows for SSL verification.
For our Windows users we added new WindowsUserNotification functions to show user notifications on Windows 8 and newer. A notification can show a picture and several text lines to notify user about an event when your app runs in background. For macOS we provide similar features using UserNotification functions.
You can now show the character palette to enter emojis, set/get valuelists as xml from/to clipboard (see CTs FileMakerSnippetStorage.fmp12), new iOSDevice functions, better barcode creation, better Speak command and more.
Finally we updated LibXL to version 3.8.0, OpenSSL to 1.1.0e and 1.0.2k, SQLAPI to 4.1.11, SQLite to 3.18.0, DynaPDF to 184.108.40.206 and Xcode to 8.3.2.
See release notes for a complete list of changes.
For our German speaking users:
- FMM 201702: Hole (Cloud), Was meldet die Cloud eigentlich bei „Hole“-Funktionen?
- FMM 201701: Plugin-Installation, Wie man FileMaker Plugins richtig installiert
- FMM 201606: Word-Dateien ausfüllen, Ein Tipp zum MBS-Plugin
- FMM 201605: Das MBS-Kontextmenü, Script-Schritte schneller aktivieren/deaktivieren
- FMM 201604: Webservices in FileMaker einbinden, Verwendung von CURL-Befehlen im „MBS-Plugin“
- FMM 201603: 4000 Funktionen in zehn Jahren, Ein kleiner Rückblick auf das MBS-Plugin
- FMM 201601: iOS App SDK, Eigene iOS-Apps auf Basis von FileMaker
- FMM 201506: Authentizität durch Signaturprüfung, Daten übertragen und Veränderungen bemerken
- FMM 201505: Wünsche werden wahr, Neues im „MBS-Plugin“ bei der FMK 2015
- FMM 201504: Datensätze effizient kopieren, Mit etwas SQL und dem MBS-Plugin
- FMM 201503: Neue Datensätze ohne Layoutwechsel, Mit Hilfe von SQL-Befehlen und dem MBS-Plugin
- FMM 201501: QuickList, Schnelle Listen für FileMaker
- FMM 201405: E-Mail-Versand, Mehr Möglichkeiten mit dem MBS Plugin
- FMM 201405: Vorbereiten von PDFs für den Versand, Verkleinern großer Dateien
- FMM 201402: Variablen, Globalisierte Lösungen per Plugin
- FMM 201401: Kalendertermine und Erinnerungen, Wie man Ereignisse aus FileMaker anlegt
- FMM 201306: Zip-Archive auslesen, Bilder aus OpenOffice-Dokumenten extrahieren
- FMM 201303: Script-Träger übers Netzwerk, Scripts triggern übers Netzwerk
- FMM 201303: Syntax Coloring, Berechnungen und Scripts bekennen Farbe
- FMM 201203: Arbeiten mit Dateidialogen, Komfortablere Dateiexporte per MBS Plugin
- FMM 201105: Bilder skalieren mit dem MBS FileMaker Plugin, So bleibt Ihre Datenbank schlank
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.
- Fixed an issue with item handling, broken in earlier 7.2 version.
- Fixed issue with registration in iOS Simulator.
- Fixed an issue with using OS debugger with Xojo app and MBS registration.
- Added -fPIC flag for iOS.
- Added more parameter for Text.EncodeToHTML to decide how to encode entities.
- Fixed problem in Text.EncodeToHTML where it did not ignore low ascii characters.
- Fixed crash in Audit.ClearCaches.
- Fixed issue with Audit when using extra fields with empty decimal value.
- Fixed variable check to handle custom script steps like Set Variable.
- Improved preferences dialog for FileMaker 13.
- Added PDFKit.AddImageFilePage function.
- Added BringWindowToFront parameter to Twain.Acquire function.
- Reduced memory usage for PDFKit.AddImageFilePage and PDFKit.AddImagePage.
But you need to verify whether your solutions works fine with the new release before you upgrade. This includes checking whether all layouts still work the same. Scrollbars went away, so windows are a bit smaller or show a bit more content. The zoom controls are gone, so you may need to make your own if users miss them. Some things layout differently now in FileMaker Go 16 compared to 15.
On Windows having no parent window around your layout windows causes changes. Some scripts don’t work anymore and need to be updated for that situation. For your users you should always have a menubar in one of the visible windows available. Because if you hide all menu bars, there is no way to use the menus.
Next some things under the hood changed. WebViewer now uses a newer WebKit version on Mac with a different API. When I first got a preview of FileMaker 16, all my plugin functions for web viewer failed. Over time I got most working again, but still there are major things missing. For example WKWebView does hardly any printing. A couple of Cocoa developers run into this and I did not get it to print for my plugins. Better not move to FM 16 if you need WebView printing or PDF generation.
For using fmp URL there is a new permission setting in security dialogs. You need to enable it for your solution to continue to use this feature as before.
The new version include external script steps defined in plugins. While this is a nice addition, I will currently not use them until we no longer need to use FileMaker 15 and older. The script steps show as missing steps in older versions and only a DDR may show the ID of the missing plugin.
If you are FBA or VLA, please check the changes in the agreements. FBA members in the US must now have a General Liability Insurance.
Nevertheless FileMaker 16 is a big step forward for FileMaker and offers a ton of new features, fixes hundreds of old bugs and certainly helps to grow the community!
See also: FileMaker 16.0.1 data integrity disclaimer
Update: Erweiterte Version der Geschichte auf Deutsch in FileMaker Blog.
To use it you need to be member of FDS so you can download the new SDK. You need to install Xcode and learn how to build an iOS app with FileMaker SDK. Next you may need to become a member of the Apple Developer program. Than you can setup certificates to actually run your iOS app on your iPhone and test it.
Next you want to add our plugin. As FileMaker includes the plugin as-is, we include a little Split application. The plugin comes with 32 and 64bit code for Mac and iOS. You can use it in the simulator and on the devices. This one can split the plugin into the various combinations like 64-bit only or a ARM only plugin. Be aware that the ARM only plugin does not work in simulator.
For some things like push notifications, we need the MBSInit.framework being added to the frameworks in the project, so the app includes it and loads it early at startup. We currently only need this to receive push notifications via MBS Plugin.
On Licensing you need a MBS license for either iOS specific or ProDevelopment in general. The normal seats, runtime and server licenses won’t help here. You can order a license in the store.
Linking the plugin in the app seems to be a problem with some of the issues we saw with iOS SDK. Like if you drop in the plugin, you may see it in the final app in both the Frameworks and the Plugins folder. But two copies is definitive a mistake! We think the one in Frameworks folder is not right. Next you may want to check what platforms the plugin supports. For shipping an app, you should not include code for Mac simulator. The feature request to have the iOS SDK strip the plugins to only ARM targets was denied.
To test plugin, I recommend to have a layout where you can simply put in an expression and evaluate it. This way you can put MBS Calls there and see what is happening. The MBS("Trace") command is also recommended to log all calls and see what is going on in the iOS app.
Finally I have to remember that this is a brand new target. While the plugin has been in development for some months, we got it to compile and run in the iOS SDK apps here. Works fine in Simulator and on iPhone in testing. Over the next months, we will have to refine it and get more functions working, fix all the issues we may see and hope for improvements in FM’s iOS SDK.
16. Mai 2017
ab 17 Uhr im Restaurant Löwen, 8706 Meilen (am Zürichsee) in der Schweiz
18. Mai 2017
ab 18 Uhr bei der Denkform in Hofheim (Taunus) in Deutschland
Ich freue mich euch auf beiden Events zu sehen und vielleicht noch was zum MBS Plugin zu erzählen.
Anschließend noch gemütliches Beisammensein.
Our MBS Plugin has been in testing with various beta versions the last months and a couple of issues have been resolved. You can download latest 7.2 beta from our plugin and use it today. We currently look with the final release of FileMaker 16 for issues, so we can release our 7.2 release next week.
Second big change is the script workspace which got a couple of internal changes for our plugin. The syntax coloring has been updated for 7.2 to work in FileMaker 16.
Third we got iOS support for our plugin for FileMaker’s iOS SDK. The new version can be used with plugin and MBS Plugin for iOS is included in the 7.2 download. Of course a lot of functions will not be available for iOS, e.g. there is no serial port on an iPhone. But over 2000 functions in our plugin should work well on iOS including things like Barcode creation or encryption functions.
As with the Linux version, the iOS version will grow over time. Please try it and let me know if you run into any issues. We add new features for iOS later this year. Already you can try notifications on iOS with a lot of options. This should work with local and remote notifications.
Everyone should try FileMaker 16, but before deploying it, find time to test all features of your solution and make the required changes. Than later this summer when you updated your scripts, layouts and plugins, you can start deploying it.
- Added controls to preferences dialog for Mac to enter license key to store it on that Mac.
- Added option to Dictionary.SetVariables for creating global variables.
- Changed license check for DynaPDF to allow text extraction in Lite version.
- Added option for Barcode.Generate to allow white on black for barcodes.
- Added DynaPDF.FileLink function.
- Added constants for CURL for TLSv1.3 and HTTP/2.
- Added XL.Book.MoveSheet function.
- Updated LibXL to version 3.8.0.
- Improved AVRecorder so it sees more devices on Mac.
Michael Valentin von FileMaker Deutschland tourt wieder durch's Land und stellt vor, was es neues gibt. Aktuell stehen zwei Termine fest:
16. Mai in Meilen bei Zürich
18. Mai bei der Denkform
Ich selber komme zu beiden Events und zeige gerne, was es neues beim MBS Plugin gibt.
The dialog provides links to download and release notes webpages, shows the version numbers and allows you to toggle the settings.
Please try it in the next release.
Beginn einer neuen Ära
Ein Ausflug nach Wolkenkuckucksheim?
Dr. Volker Krambrich
Was meldet die Cloud eigentlich bei
Wenn ich arbeite, haben die anderen Pause
Erzwungene Ordnung, optimiert
Verbesserung der Eigenen Funktion „BOM Liste“
PDFs per Script zusammenfügen
Mehrseitige Scans erstellen
Das klingt irgendwie logisch
Die Anwendung des Funktionensystems für Logikoperationen
Portale zur Datenauswahl, Bearbeitung und Neuanlage von Datensätzen
Auswahl per Tastensymbol
Ideal nicht nur für mobile Anwendungen
Erstellen einer einfachen Anwendung mit FileMaker
Ein Volltextsucharchiv für das FileMaker Magazin und Zeitschriften im PDF-Format
Und natürlich: Editorial | FileMaker Stammtische | Plugins und Tools | Kleinanzeigen | Neuigkeiten