Claris FileMaker is a powerful tool for creating automated workflows; workflows that not only make our workplaces productive but also ensure accuracy and consistency within our business processes. When you think about it, each of our scripted workflows encapsulates a vital piece of our organization's tribal knowledge. FileMaker applications are typically created, extended and maintained by the very process experts that use them, which isn't usually the case with other software development platforms. So our FileMaker apps easily become a projector of our business goals and operations.
The Support Group Blog
One of the many features that make FileMaker such a powerful and flexible tool is the Script Workspace. Scripts make it possible for you to manipulate and execute various actions on the data within your application. They help to maintain efficiency, consistency and accuracy by automating manual workflows. Keep in mind, FileMaker 18 added 11 more file-based script steps to our tool belts.
We frequently use scripts to find and sort records, generate reports and send emails. We've even shared ways to move data from repeating fields and to manage and customize images in FileMaker with scripts. Depending on the task, a script could be as simple as a single line of code or as complex as hundreds of lines of code. Building a script can be a bit intimidating at first, but FileMaker's low-code, step-by-step approach to building scripts makes the process pretty painless once you get the hang of it.
It might sound trivial, but naming conventions are significant factors when you're developing business applications. A systematic way of naming files, tables, fields, etc. provides a high level of organization, consistency and efficiency to both app developers and users. A good naming convention also allows an app to be easily adaptable, scalable and transferable throughout its useful life. These benefits all apply for apps developed within Claris’s FileMaker Platform.
If you're a user of a spreadsheet or any other program that displays information in tabular format, you're probably familiar with a quick sort technique. You can usually click a column header and the data within the column will automatically sort in some way. You can sort of (pun intended) do this within a table view layout in FileMaker as well, but it's not as simple as a click. You have to right-click on the header and navigate a Byzantine labyrinth of menu options before you get to what you hope is the expected result. Wouldn't it be nice if you could provide the typical user experience to yourself and your users within your custom FileMaker app? Well, you can...by naming a few fields/objects on your layout, creating a global variable or two and some buttons that run a script. But we're putting the cart before the horse; let's start at the beginning.
We've shown you how to add custom headers to a CSV file. Custom headers are useful, particularly for end users, because they provide intelligible header names when downloaded FileMaker files are opened in other applications. We developers don't always use intuitive field names when we're in the heat of custom app development. It's usually a bunch of geeky gibberish only the coder can understand. FileMaker 18 actually simplifies our custom header export process a bit, thanks to a few of the new script steps that this version offers.
Before we begin, it might be helpful to review our FileMaker 18 file-based script steps blog post, particularly the section that discusses how to read, write and manage external files. This will give you a good foundation before taking a look at this more advanced topic.
Image features are pretty common within FileMaker apps. We've had the ability to store images and other types of files in container fields for quite a while. Usually, we leverage that capability to build image modules for our clients. Having developed several of these myself, I can tell you that users generally want to be able to do at least three things:
- Save the images in FileMaker
- View a thumbnail of the image
- Customize the size of the image
Of course, there are different ways to accomplish these requirements efficiently.
Repeating fields have a long and somewhat controversial history in FileMaker. If you want to start a heated discussion with another FileMaker developer, start one about repeating fields! Some developers love them, some hate them and then there are some like me, who appreciate them as another tool in the belt to be used to accomplish functions that would be hard to do without them.
If you started building FileMaker applications from scratch in more recent versions of the product you may not be very familiar with repeating fields and probably have never used them. You may even have an understanding of what they are but have never found a need to use them. If you've been using FileMaker for a long time or have taken over a legacy solution, chances are you've had to deal with them.
The FileMaker Platform gives you plenty of options for exporting data out of your app. You can export files as text or even a separate FileMaker file but in our experience, the most common export format is Excel. It's pretty easy to export data out of FileMaker into Excel; the tricky part is customizing the headers of the exported data.
Why would you want to customize the headers? You may want to customize headers so that they're easy for the user to understand or to make them consistent with field names in other systems. For example, some of our developers like to group the "name" fields in a contact database by having them all start with the text "name" – nameFirst and nameLast instead of First Name and Last Name. So when we export that data natively from FileMaker, the column header will be nameFirst, not First Name. I won't get into why we do that here; that's a whole other blog post about field FileMaker naming conventions.
There are different factors that contribute to a successful custom application. Of course, function is important, but even if the app does exactly what users need it to do, users may not necessarily like it if it's difficult to use due to poor legibility, navigability, responsiveness, etc.
FileMaker, the Workplace Innovation Platform, helps to speed up custom app development, right down to the smallest detail, including design styles. The user interface has a huge impact on user experience. A well-designed interface generally equates to a positive experience. Developers must ensure that they use appropriate and consistent fonts, sizes, colors, images, layouts, and so forth within their applications. They can simply accomplish this by creating custom styles for the apps they design.
Let’s Play Cards!
Card Windows can be a great tool for transactional programming. You can easily arrange for transactional events to either pass or fail, meaning all edits/adds/deletes that happen during the transaction are either committed or not. Cards can be leveraged to guide the user through a process, storing the data via global fields, variables or JSON arrays along the way. Ultimately, the data will only be committed if the user completes all of the steps. Incidentally, you can also use slide panels to create this user experience.