English

Creating Universal Pickers

In the world of FileMaker solutions, it's almost inevitable that a solution will experience significant growth during the initial stages, followed by a transition to the everyday pace of normal use. When developing those initial features, one of your key objectives should be to emphasize reuse and repurposing. As is often the case, the less you have to manage, the easier it becomes to maintain and update your solution. There's less to re-learn, and your scripts, layouts, calculations, and other elements are more straightforward to locate and update.

However, if you tend to create numerous one-off duplicates within your code, you may end up with a collection of disparate elements that require attention or become obscured over time as additional features are added, potentially duplicating some earlier functionality. In complex solutions, it's not uncommon to become confused about what was implemented earlier and inadvertently replicate entire feature sets.

In such scenarios, you're left with the burden of either consolidation or selecting one implementation to retain while removing the others. A more effective approach is to proceed by making aspects of your solution universal and the default method for accessing specific functionality. This is where creating universal pickers that apply solution-wide can yield substantial benefits. In this video, we address precisely this situation and guide you on how to approach their implementation.

Tags:
UI

Object Card Windows

Despite the FileMaker platform being several decades old, the original design of Layout mode and the ability for developers to harness existing tools to either mimic operating systems like iOS or craft entirely unique user interfaces remain monumental advantages for those who opt for this platform.

One of the most significant additions to the Claris/FileMaker platform was the introduction of Card Windows. I remember creating some of the initial videos showcasing this feature; the capacity to exercise complete control over a rendered window was an immensely valuable advancement in FileMaker development.

Granted, there are areas where this feature could be refined to enhance its functionality even further. However, the current capabilities allow us to effortlessly generate our own windows whenever and, more notably, wherever we desire.

This video, along with the accompanying technique file, introduces a feature I refer to as "Object Card Windows." To put it simply, you specify a target object that will determine the boundaries within which a new card window will appear. The advantage is a straightforward yet incredibly practical script for generating new card windows in specific locations. This utility script is an absolute necessity for any solution, and its inclusion in your toolkit is highly recommended.

Tags:
UI
AttachmentSize
ObjectCardWindows.zip1.66 MB

Confirmation Prompting

One of the major challenges that any solution or developer encounters is effectively managing the growth of their solution. As the solution expands, the issue of "dilapidated code" arises. This refers to code that either gets replaced or continues to be used without being updated to leverage the latest enhancements in FileMaker. Consequently, a significant portion of the code may become obsolete over time.

One of the most effective solutions to tackle this problem is the use of utility scripts or code that addresses a wide range of use cases. This video showcases the implementation of a commonly used pattern, namely, obtaining user confirmation to ensure that their intended actions align with the expected outcome. By employing a utility script called "Confirmation Prompt", we can prompt users not only for record deletions but also for various other situations.

This powerful utility script allows us to manage a variety of user interactions, such as setting a temporary $$UI.VARIABLE or modifying the value of a hidden field. Furthermore, the video presents one of the best approaches to learning and utilizing JSON, in case you haven't embarked on that journey yet. JSON proves to be an excellent method for managing serialized data within Claris/FileMaker. If you aim to streamline your solution and reduce the total number of scripts, incorporating the utility script from the provided technique file will undoubtedly save you a significant amount of time.

Tags:
UI
AttachmentSize
ConfirmationPrompting.zip1.65 MB

Restoring User Environments

Over the years I've created a number of videos about restoring user state. Returning windows to their last viewed location, restoring tabs and slider panels to those last viewed, etc. I've also created videos about super quick startup and managing users within a Users table.

What I haven't shown is how I combine all of those processes into a powerful user environment restoration routine. Along with highly maintainable (and transportable) code. I've used this approach on most all of the solutions I create and have found it to be the most flexible and best way to manage the user environment. It all came about when FileMaker 16 released with the then new JSON functions. If you haven't yet used JSON in your solutions, then this single video will give you reason enough to start using them.

If you'd like to provide each and every user of your solution with their own personal settings and make sure your FileMaker solutions acts and reacts like professional software, then you'll certainly want to take advantage of this video and the provided technique file!

Tags:
UI
AttachmentSize
RestoringUserEnvironments.zip1.74 MB

Prettifying Your UI

One of the most satisfying things about being a solution developer is the opportunity to create the user interface. You get to create, and modify, how users interact with your software creation. It's like shopping for just the right outfit for that perfect occasion. The one which will present your software in just the right light and with the right amount of pizazz.

Of course, you have to be willing to update and change your style over time. Nothing stays popular forever - right? So, you constantly need to be learning about ways you can make things look and feel differently within your software.

In this video, I showcase a number of tips and tricks related to making your user interface just a little bit prettier. It's not a word you'll use that often, but, by taking the time to prettify your solution, you'll find it's a rewarding task. Learn from this video and the provided example file and make sure your solution's UI is as pretty as it can be. Prettify it!

Tags:
UI
AttachmentSize
PrettifyingYourUI.zip1.61 MB

UI Portal Enhancements

Anyone can just throw everything they need within a portal. Adding a new field? Just throw it in the portal. But WAIT! The question is "Should you?". The fine art of determining what should end up in your portal is based on how the data and/or actions are being referenced/used.

Is the frequency for editing the data high or low? If it's low, then maybe the user doesn't need field access. What is the frequency of record deletion? Low? Then, do you really need that obvious red trash can icon on every row? How about supporting common keyboard navigation such as using up and down arrows?

These are the types of things you'll find addressed within this video. A lot of really nice tidbits of inside information with regards to working with portals.

Tags:
UI
AttachmentSize
UIPortalEnhancements.zip1.59 MB

Successful UI Design - Part 2

FileMaker themes are simply a collection of the popular CSS standards plus a few extra attributes which are FileMaker specific. Each element on your FileMaker layouts is defined by these CSS settings. They can be seen when extracting them from the clipboard, and if you know the right location to retrieve and store them, can be defined by any enthusiastic developer.

When FileMaker, now Claris, first introduced themes they likely had the intention of allowing users and/or third parties to create their own. In the time since that initial release it may not be as commonly known, but the location still exists and you can certainly create (or modify) your own theme.

The trick is knowing what's required, what can and can't be done and how the CSS translates to the FileMaker UI widgets. Even still, if you can't take the time to learn every single detail, you can still work with a theme which currently exists and simply tweak that theme to fit your specific needs.

In this video I walk through all the specifics related to customizing one of the existing themes. As long and you get the files into the right location with the right values, then you can modify any theme to your heart's content.

Locations to find existing theme files are here.

Macintosh: [MY_DRIVE_NAME]/Applications/FileMaker Pro.app/Contents/Resources/Themes
Windows: C:\Program Files\FileMaker\FileMaker Pro 19\Themes

Locations to store theme files are here.

Macintosh: [MY_DRIVE_NAME]/Users/[USERNAME]/Library/Application Support/FileMaker/Extensions/Themes
Windows: C:\Users\[USERNAME]\AppData\Local\FileMaker\Extensions\Themes

Tags:
UI

Successful UI Design

How easy is it for you to design the user interface of your FileMaker database? Are there any tips you have which makes the process easier? If so, then I would love to hear them!

In this video, I'm providing you with the best information I have about a successful UI design process. It's the opening video to a deep dive about how themes actually work within FileMaker. I start with a blank layout and go over the major areas of what I consider when starting the design of a new database or a re-skin on an existing one.

I cover aspects of layout choice, theme selection and primary navigation. These are three of the biggest decisions you make in the UI process. The rest of the design comes down to the details of the type of solution you are developing.

Sit back and relax and see if there are some valuable insights you can pick up from part 1 of this two part series about UI design within FileMaker.

Tags:
UI

Simple User Messaging

FileMaker natively provides us with some really nice tools for user feedback. We can use the Show Custom Dialog or even create a dedicated dialog using a Card Window and Layout.

There are, however, times when you need something a little more subtle. Just a simple message on screen will often suffice. The next question is whether you need the user to interact with that message or not. The solution is simply to provide both options of course.

In this video and technique file, we explore a super simple method for providing user feedback via a simple message which is shown using a dedicated Button Bar. Scripting the message happens within two lines of code and doesn't have to add a whole lot of scripts to your solution. It's quick, easy and a great way to provide user feedback.

Tags:
UI
AttachmentSize
SimpleUserMessaging.zip1.59 MB

Restoring Deleted Records

There's this special feeling you get when developing software where you feel like you've created something magical. Sometimes, it doesn't even matter if you've done the same type of thing before. It just feels like you're the master of the universe and you've created something super useful.

This may even be the case when you're simply creating a virtual trash can and providing users with the ability to reverse course on that accidental record deletion.

In this video, we're taking a look at a super simple trash can metaphor. It's easy-to-implement and allows users to bring records back from the dead.

While there are multiple ways to handle record deletions, many of which are discussed in this video, the whole concept of being able to dig in the trash and take something out is familiar territory for many computer users. We're just going to emulate it within our FileMaker systems.

Tags:
UI
AttachmentSize
RestoringDeletedRecords.zip1.67 MB

Pages