FileMaker 2023 introduces Perform Script on Server with Callback, a new asynchronous method to execute scripts with FileMaker Server. Now we have a way for FileMaker Server to execute another script, a “Callback” script, when one script is done processing via Perform Script on Server. It’s like calling your virtual assistant and instead of waiting on the phone for 5 minutes for info, they basically call you back when they are ready with an answer.
The end result is improved performance, better management of complex script workflow, enhanced user experience, and new possibilities for handling integration with APIs, email and services like Claris Connect.
Script transactions in Claris FileMaker are finally here, but wait! Haven’t we done “transactions” in FileMaker for a long time? Yes and Yes. But script transactions are different and the main advantages, that I see, are the possibilities of simplifying code and improving solution performance. I’ll elaborate on these in this post. And, of course, there is also the inherent benefit of doing things transactionally … all or nothing is the law of the data.
I often like to measure performance, because I am curious if some small change can lead to subtle, or maybe not so subtle, improvements. For the longest time my Swiss Army knife for measuring Claris® FileMaker® performance has been:
As Claris gets further into an Agile groove, there are product releases more often, always with new features and improvements. Claris FileMaker 19.5 is no exception. It includes many new features, expanded extensibility, performance enhancements, and reliability improvements. I want to bring attention to one simple thing that promises to change the world for many of us in the FileMaker developer community: Save a Copy as XML…and the performance improvements running this on FileMaker Server.
Building a custom Tableau® Connector for Claris® FileMaker® enables faster, more reliable and more flexible connections between Tableau and FileMaker datasources, compared with the legacy Web Data Connector.
For a number of Beezwax client projects, we’ve installed and deployed a Tableau Connector (aka “TACO”) for FileMaker. The TACO was built using the Tableau Connector SDK (provided by Tableau) to connect to datasources on FileMaker Server. The TACO method uses JDBC rather than the FileMaker Data API for the connection between FileMaker and Tableau, and in our testing the performance of data extracts was up to 10 times faster.
When the Apple silicon Macs with M1 chips came out, I read and watched many of the reviews. Most of them had great things to say about the promise of Apple’s new M1 chip…I was impressed. When I finally received my Apple M1 MacBook Pro, and started to use it…I was amazed.
Back in 2020, FileMaker Pro 19.2 wasn’t optimized yet for Apple silicon processors, but ran fine under Rosetta emulation. On my M1 MacBook Pro, it already felt much faster than running FileMaker “natively” on an Intel-based MacBook…I was astonished.
Today, I’m running the just-released Claris FileMaker® 19.3, with native support for Apple’s M1 chip, on a new MacBook Pro. It is, in a word: Astounding!
Everything about the M1 Apple silicon leaves you simply delighted and surprised. It’s like the first time you drive a super-charged Tesla and feel the rush of powerful acceleration OR I imagine it’s like when Han Solo first blasts the Falcon into light speed: it must be experienced to be believed.
Doing the simple is hard. Someone recently reminded me of this when discussing business workflow. Tasks like scheduling, calendaring, communicating and sending notifications are individually manageable, in a world where tools for these tasks exist online. Calendars, email, databases, Slack, and a collection of other apps and services make this possible.
Combining functions, features, or steps in creative new ways can deliver productive results. I was thrilled to discover in FileMaker 18 that the new file-based script steps give us the ability to perform imports natively on FileMaker Server, with no configuration or changes needed.
Once you have crafted a Tableau dashboard, pulling data from your FileMaker solution, then your next goal might be to make sure the dashboard data gets refreshed at regular intervals, and in an efficient manner. And that is what we’ll do in this blog post.
I’m always excited each time the FileMaker Platform gets new capabilities. It isn’t just the new features on their own that make things interesting, but what happens to the platform as a whole which provides for some interesting and inspiring innovations. In this case, it is a new way to do transactional record editing in FileMaker. This is the first in a multi-part series on this topic. Continue reading “How Transactional is the FileMaker Data API?”→
One of the most exciting new features of FileMaker 17 isn’t part of the product, technically: it’s a command line function called the Data Migration Tool. You invoke it from the terminal, but don’t let that fool you. This is a uniquely powerful tool, one that honors the pitfalls of developing in a hosted, high-trafficked app — finally.
In looking back at our initial approach to logging FileMaker PSoS (Perform Script on Server) activity, I reflect back on a number of times where this has been extremely helpful. If you have come to rely on the benefits of PSoS then you also know some of its challenges — one of the biggest is debugging and monitoring how long sessions take.
Since FileMaker 16 introduced JSON, in new systems we’ve switched over to using JSON as the main way of exchanging data for parameters. Because we also use PSoS in new systems, we updated our method for PSoS Logging and this blog entry talks about the changes we made there and also restates the usefulness of this log. Continue reading “Logging PSoS Activity: Episode III – Return of the JSON”→
Last year when I wrote this blog post we were talking about FileMaker 16 and the Data API being in beta. Now that FileMaker 17 has officially been released and along with it the Data API is out of beta and is a version 1.0.
If you’ve been working with FileMaker, then I don’t have to sell you on the fact that it’s a great solution to help you manage your data. Whether you’re an in-house developer, a consultant, or just starting to explore what is possible with this powerful platform, you will at some point come across the need to build in some kind of dashboard. Maybe your group needs to see sales trends for the last year or perhaps you have a system that tracks projects and want to see the daily average of tasks completed. In either case, dashboards are a great way to synthesize large amounts of information and provide you with insight in a simple and informative visual design.
Highlighting insight, performance and collaboration
Wow! InspectorPro 6 is finally here. Can’t even believe it. It was such a massive undertaking. Lots of great new things and many improvements. Really proud of this release. In the immortal words of the late Steve Jobs… “This is our best version ever”.
One of the first lessons I learned with FileMaker is that of context! Layouts, reports, calculations, scripts, and so on all act from the perspective of a single Table Occurrence (TO) — the “context” — pulling in data from related tables as needed.
Generally, the record set being acted on is the set of records in that context table occurrence or a found subset thereof. There are a few exceptions to this, however, and today we’re going to explore one of those.
A few years ago, I worked on a FileMaker project where the client told us that every week they need to import about 7,000 rows of data that represent some information that this company uses. And every week there might be some modified records, some records that don’t show up any longer, and some new records that hadn’t already existed. For this example, let’s just call it this data “Products”.
Now more than ever we’re relying on Perform Script on Server (PSoS) to maximize FileMaker performance, so naturally a need arose for a way to proactively monitor how many concurrent scripts are being triggered. This type of logging helps us see if we’re reaching our maximum limit, or have a rogue script eating up processing power.