The Support Group Blog

FileMaker 2025: Improvements for Developers Galore

Written by The Support Group | Jul 24, 2025 4:56:20 PM

As FileMaker 2025 rolls out, Claris keeps highlighting one key theme: improving developer quality of life.  But what exactly does that mean?  Well, with any release, there’s always a question of where to spend time and money on improving the product.  Often, the shiny new technology gets the bulk of the attention (hello, AI) while small improvements that really only impact developers, well, get shifted to the backburner.  But with FileMaker 2025, Claris has  said - let’s do both!!  

This new release includes both large and small enhancements that will make developers' lives much easier.  This directly translates to an increase in your bottom line, as it enables developers to work more efficiently and effectively.  These are features like:  Collapsing Script Steps, Folders for Custom Functions, Enhanced Table View, and an improved Replace Field Contents.  It’s also been reported that many of the dialog boxes throughout the tool now will “save” or remember what size they were changed to. 

On top of that, Claris has added new functions and script steps that will dramatically alter the standard way that most developers do things, therefore improving developers’ ease of use with these new capabilities.  Some of these were tools that were created for use with the new AI capabilities, and were able to be made available outside of that space for normal FileMaker use.  These include:  GetTextFromPDF, GetRecordIDsFromFoundSet, JSONParse, and Go To List of Records.  

Beyond that, there were over a hundred small tweaks and fixes; I would encourage you to go and read the release notes here.  We’re going to do a deep dive on a few of the new features, starting with:

 

GetRecordIDsFromFoundSet and Go To List of Records

 

These work well as a pair. GetRecordIDsFromFoundSet is a function that will grab all of the  RecordIDs created by FileMaker when a record is created.  As a reminder:  every time a record is created, Filemaker will assign an internal RecordID.  This is not displayed anywhere, but can be revealed with the Get(RecordID) function.  Another important distinction:  the number displayed in the Status Toolbar is not the RecordID, but simply the RecordNumber, a number representing the record’s position within the current found set.   

The type parameter can be set as a number, from 0 to 4.  Each one will change how the RecordIDs will be returned:  0: Value Array, 1: JSON String Array, 2: JSON Number Array, 3: Value Array with Ranges, 4: JSON Range String Array.  To illustrate, here are five screenshots with a found set of 10.

 

 

This function is really only useful for its connection with the new script step: Go To List of Records.

 

Go To List of Records

This is where the real magic happens.  Having captured a list of recordIDs, you can now feed that list to the script step, and have it show you that list in a new window, with a different layout.  This helps the average developer skip a variety of extra steps that were previously required.  Often, we will want to go to a found set to perform a specific action.  In the past, we had to either capture the find criteria, and replicate the find in the new window / script, or we had to create a relationship specifically for this purpose, and use the Go To Related Record script step.  Recreating a found set was such a chore that we would often open up a new window just so we could preserve the current found set.  

Now, we can simply capture the IDs needed, and pass them to this new script step to perform. If you ever used Snapshot links, this is essentially how they worked.  Like a Snapshot link, this script step will return you to the same found set and the same sort order.   

There are so many places this could be used, it’s hard to pick just a few.  You could manually select five records, grab their IDs, and then have a new window open up in the same layout but just with that found set. You could pass a list of IDs to a PSOS script so that the script will immediately know what set of records to perform the action on. You could save regularly used found sets using GetRecordIDsFromFoundSet and go back to them easily.  One of the most important would be the elimination of relationships that are set up primarily for use in a script.  Anything that can simplify the relationship graph will have beneficial effects in the long term, both in performance and in development time. 

Some notes: 

- the RecordID is NOT your primary key

- the RecordID is NOT the RecordNumber

- this will only work if the new layout has the right context, as in the correct table.  You can use any Table Occurrence you want, as long as that table occurrence is associated with the same table that you built your RecordID List from.  If you go to the wrong table or context, you might get a found set - but it will be the wrong found set. 

 

GetTextFromPDF

This is relatively self-explanatory:  you can have FileMaker grab the text that it can scrape from a PDF into a variable or a field. The Mac platform had a similar function called GetLiveText, but now we have a function that is cross-platform.  Here is an example of the types of results you can get: 

 

Original PDF:

 

And this is what FileMaker returned:

That by itself is cool, but where this could get really interesting is combining it with some of the new AI tools.  You could grab the text, and then submit it to an LLM along with a list of fields and then ask the LLM to create a JSON text object that fills in the fields with the data from the PDF. Then parse out the results and use the set field script step to enter the data into your table.  Boom, no more data entry.  

 

Collapse Script Parts

This might be my personal favorite.  I know, I know, not a lot of flashiness or cool functionality here.  But I think, at the end of the day, this will make a lot of developers' lives much easier.  When you hover your mouse in the space just to the right of the script step numbers, if you are hovering over a loop, statement, or transaction, it will show you a green arrow at the beginning of the part, and then a dotted line down to where it ends.  That by itself is useful, as you can easily see where that part ends; it’s especially nice if this particular part is quite long, and/or if you have many different nested parts.  Then you can use it to collapse that whole section.  It will make focussing on a particular section of a script much easier to do. 

 

Those are some of the highlights.  There is SO much more to this release, and I encourage you to dive in and start playing around with some of these new tools for yourself - I think you’ll find they save you time and your company or clients money.  If you’re interested in upgrading to FileMaker 2025 or learning how TSG can help optimize your custom FileMaker application, please contact us!