With next MBS Plugin, you can put a WebKit 1.x web view on the Popover and load whatever you like.
The WebView.CreateOnPopover function will place the web view there until you close it later with WebView.Close.
Do not hesitate to contact us if you like to try the new plugin on the weekend.
Do you have a MacBook Pro with Touch Bar?
If yes, how often may you have pressed ESC key in FileMaker unintentionally?
Well, to keep you sane and not loose valuable custom functions by pressing ESC accidentally, we got a new option in MBS Plugin preferences dialog for you:
So optional the MBS FileMaker Plugin 8.1 and newer will be able to block ESC key presses without modifier keys. And if you press option key, we remove the flag for the option key from the event and pass it though to FileMaker. So ESC alone is blocked, but Option-ESC goes through as if you pressed ESC.
The feature only takes effect on MacBook Pros with TouchBar, only inside FileMaker application, only if enabled, and only if you use the internal keyboard.
If you like to try this today, please get in touch.
FileMaker, Inc. has created a dedicated web page highlighting upcoming in-person and virtual events submitted by FileMaker partners and enthusiasts around the world. Upcoming workshops, trainings, user group meetups, trade shows, and webinars can all be found in this new area in the Learn section of FileMaker’s website.
Sending Emails with various servers can be a challenge. In this blog article we like to collect the settings needed for using our SendMail functions in FileMaker or CURLEmailMBS class in Xojo to send emails. As you see we always prefer to use encryption.
Bei checking certificates, we can detect and avoid giving our password to a transparent proxy. And we enable TLSv1.2 for all here and require encrypted connection. It's important to test and verify this, as I once run into a hotel reading my emails to count them and prevent spamming.
Today we got a problem with SQL. It’s not the usual SQL injection worries, but more the convenience of building SQL statements containing values, which causes problem.
We see a lot of SQL queries to lookup values, but people love to include the
MBS("FM.ExecuteFileSQL"; Get(FileName); "SELECT Name FROM Contracts WHERE ID=" & $ID)
Now if ID is a text, but $ID contains the number 1234, this causes an error:
[MBS] ERROR: FQL0018/(1:32): An expression contains incompatible data types.
You would need to use quotes at least:
MBS("FM.ExecuteFileSQL"; Get(FileName); "SELECT Name FROM Contracts WHERE ID= '" & $ID & "'")
Although you don’t see the double quotes having single quotes easily here. This may work, until someone includes a single quote in that variable.
When you use parameters in the query, you can avoid this:
MBS("FM.ExecuteFileSQL"; Get(FileName); "SELECT Name FROM Contracts WHERE ID = ?"; 9; 13; $ID)
You can pass parameter as text or number even if it does not the match the field type. FileMaker will converted the data type automatically to match.
Next, lets assume you have a variable containing a number and you make a query
Set Variable [ $x ; Value: 123.45 ]
Show Custom Dialog [ MBS( "FM.ExecuteFileSQL"; Get(FillName); "SELECT Name, Price FROM Items WHERE Price= " & $x; 9; 13 ) ]
If $x is a number, it will be converted by FileMake to a text. Or it is a text already with some user entered number. Now if the field is empty, you get a syntax error, because your SQL ends in a = character. But you may have noted that the number is passed directly here without parameter. So a German user typing "123,45" with comma as decimal separator will cause a SQL error. SQL always uses dot as decimal separator, so the query fails in Germany with comma, but works in USA.
Show Custom Dialog [ MBS( "FM.ExecuteFileSQL"; Get(FillName); "SELECT Name, Price FROM Items WHERE Price = ?"; 9; 13; $x ) ]
Using parameters helps you to avoid problems here and this works for any locale. If needed, you can use GetAsNumber() to explicit convert text to number and use localized decimal separators to get a numeric value.
For years people asked for our DragDrop functions to work on Windows too.
Due to a few technical difficulties, the feature was in development for a year and put on hold several times. But last week we found the missing piece for the puzzle to get it working.
So for next prerelease, the DragDrop functions will work on Windows, too. A few little details, will be different. First we accept currently text and file drops. The image view used for drop destination needs a picture as on Widows we can't have it transparent. But that is normally not a problem as we just add a picture there with a note to user for the drop area.
Drop data can be text, file paths or file data. So some files like the files from explorer come usually by file paths. But attachments from Outlook (as seen in video), come as file descriptor with on demand data. So there is actual file, but the data comes directly from the application initiating the drag operation.
As you may know we provide PHP support in our Xojo and FileMaker plugins. You can load a precompiled PHP library, get/set variables and run PHP code. That is useful for reusing existing PHP code in your solutions. There is a wide variety of uses including processing JSON or XML, doing SOAP or REST requests for various web services, calculating hashes or tokens for authentication or using the same functions in Xojo/FileMaker for encryption as in the PHP code running on your website for the counterpart.
We added PHP support a long time ago. At least 9 years ago for Xojo (called REALbasic at that time) and later for FileMaker in the year 2012 with version 2.9, about 5 years ago. The code is mostly identical for both and even allows to call back to the host application. In Xojo you can call an event in your Xojo code. In FileMaker you can trigger scripts, use evaluate and SQL to query your database. It works quite well for a few customers.
Added support for SQL Anywhere API v1 in addition to v2.
On shutdown, the plugin now closes progress dialog, frees notifications and drag & drop areas to avoid later callbacks to unloaded plugin which would crash. Usually only happend when you had such a thing in use and updated plugin.