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

Mobile Transitions & Effects

While you won't have access to as many visual effects as if you had created a native iOS application, there are still some things you can do and take advantage of with native transitions within FileMaker Go. One of my own recent experiences led to making a dedicated script which enhances the visual appeal of performing a find within a single layout.

In order to gain the advantage of FileMaker Go's native layout transitions, you can use a dedicated layout and script to accomplish some really nice transition effects. It's also a good idea to be familiar with how you can use the Set Layout Object Animation script step in conjunction with Popovers and Sliders.

This video will show you a few solutions to making your FileMaker Go/iOS SDK solution a bit more visually appealing by taking advantage of the native transitions provided by the environment.

Tags:
UI

Balanced Button Bars

Sometimes, it's the little things you learn that make working with Claris/FileMaker so enjoyable. Things like making a Button Bar balanced when hiding segments and not having to use any scripts or extra code (unless desired) to do it.

This video presents a great little technique of how you can use a Hide calculation on your button bar segments yet still maintain the same relative button size. With this little bit of know-how, you can easily stack various button bars and provide all kinds of progressive disclosure of various solution features.

Add this simple trick to your arsenal of great UI tricks for Claris/FileMaker.

Tags:
UI
AttachmentSize
BalancedButtonBars.zip1.64 MB

Incredibly Easy Menus

One of the biggest downsides of any complex FileMaker solution is the growing number of layouts and layout elements you'll have to manage. If your number of navigation (or general menu) items is both static and large, then you're going to have issues with keeping the solution well updated. Aside from this, you could have additional complexity when it comes to controlling which menu items show under certain circumstances.

While there are number of ways to make menu management easier, the best solution for most any code is to maintain it within a singular location. Allowing that code, and singular layouts, to serve your whole solution, and be flexible enough to vary when necessary, is ideal. This is exactly what this video and technique file are all about. Not only is this solution one of the most easy-to-manage solutions for a menu system, but, it's also one of the most incredibly easy menu systems I've ever created. Once you see the simplicity of management it's hard to think of going back to anything more complex.

Here's a hint about how it works. If you've used and love the flexibility of managing script steps within a script, then you'll fall in love with using Incredibly Easy Menus!

Tags:
UI
iOS
AttachmentSize
IncrediblyEasyMenus.zip1.79 MB

Universal UI Strings

Claris/FileMaker, as a development environment, is full of all kinds of hidden corners and secret places. Most of this is due to its age and keeping a strong commitment to backwards compatibility. To its credit, there are very few features which have been removed to date. Still have a database which uses repeating fields to store data? They're still there!

To say that developing within the environment is straight forward is a bit misleading. Sometimes, you can combine knowledge about older features with newer ones and end up with something entirely new and cool. That's what happens in this video and technique file. By using JSON with one of those somewhat hidden features, we can solve an age old problem of having field specific information available to the whole solution - and we only need to manage it within one location, which happens to be specific to the field itself. It's one situation where having tightly coupled data is exactly what you're looking for!

In this video we'll take a look at how a well structured format like JSON can benefit us in a wide variety of ways. By addressing the need for supporting multi-lingual field labels, we are just touching the tip of the iceberg with this creative solution.

Tags:
UI
AttachmentSize
UniversalUIStrings.zip1.71 MB

Button Bar Keyboard Navigation

FileMaker provides a good number of UI widgets which allow for a wide mix of cool things. Sometimes, it's all about knowing the various features and functions which allow you to implement a really helpful navigation feature.

For this video/article release you're going to find a wonderful technique which allows you to assign keyboard commands to the navigation of a Button Bar widget.

There are a number of ways this technique could be used, but the fundamental reason for doing so is because you don't always want the user to use a mouse to navigate your Button Bars. So, if your solution has any use for Button Bars, which allow a user to navigate to various areas, be it Layouts, Sliders or Tabs, then give this video and its associated technique file a good look over!

Tags:
UI
AttachmentSize
ButtonBarKeyboardNavigation.zip1.65 MB

Using Portals for Navigation & Interaction

Portals can be used for essentially two different functions. Either data presentation or interaction. Of course, as you already know, you can also use a portal for both aspects of presentation and interaction as the same time.

In this video, we continue the growth of our Home Project database where we take a look at the core differences between a Master/Detail portal (Current found set) and one which uses a Self Relationship.

If you've not come across the differences between portal types, and simply selected one over the other, then hopefully, this information will help out. Using the information from this video you'll be able to make an informed decision about which version of a portal will fit any certain set of circumstances.

Tags:
UI
AttachmentSize
HomeProject004.zip283.21 KB

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

Pages