Contextual Mode Shifting – Update

This is an updated version of the original blog to show you where we are today.

So what is Contextual Mode Shifting?

It is changing modes in Claris FileMaker and selecting a panel on a slide control by object name to enhance the user experience. This also extends to limiting access to who can edit, search, etc. 

Why would you use this technique?

Contextual Mode Shiting is about user experience and presenting the User what is needed at the time of a request in the best possible way, while also limiting a user with less privileges that are system driven. This also allows us to hide the toolbar and focus on an application experience.

How?

On a given layout we create a slide control for the data that is most important to the record.  We used to use 4 panels, but with new features in Clars FileMaker, we now use 2. The Slide control has 2 panels, one named panel.browse and one named panel.fields. 

panel.browe is for Browse Mode only, nothing on it is editable, it is strictly meant to display the most important data to the user in the easiest way to read and highlight important information. All layouts have information presented in the same place. Status, Names, Invoice numbers, etc. Often buttons are used for quick navigation to other related records. 

panel.fields is used for New Records, Editing Records, and Find. 

By doing this we stay in context to the base table, we protect the data by not allowing accidental clicking or having a user forget they are not in find mode and type over a company name. This happens, this protects the data at another level.

Each button that enters a state (New, Edit, Find) checks to make sure that the logged in user has permission for that actions by a group setting we control within the applications we build. Next it sets up for that state. 

All set Global Variables for the current state so the actions with Cancel, Save, and Perform Find are handled correctly. 

At the time the original blog was written our Edit mode panel was used with globals where we copied the data to global fields, and on Save we wrote the data to the actual fields. This was before we had JSON parameters. It was a way to do transactions, however, it was very cumbersome. When JSON was available we scanned a layout with field we wanted to be able to be restored, then created a JSON string in a Global variable and would write them back if Canceled. 

 Since Open Transaction was introduced in Claris FileMaker 2023 we were able to take full advantage of the feature saving 28 layouts and big scripts. It looks like this today. 

We pause the script and based on the parameter, we either commit or revert the transaction. One of the most simple and significant features that was ever added to Claris FileMaker. 

We need different modes for best User Experience and User Interface

  • Browse – An easy to read view, that is visually appealing, and protects data with use of button bars with scripted GTRR navigation and Layout Calculations.
  • Find – Search, with fields that are necessary to search the underlying data set
  • Edit – Allows editing of fields, while keeping users focused, in Jarvis, they are transactional as well.
  • New – Creation of new records, often allowing creation of first related records, like a company contact.

Browse

Clean, easy to read, fields cannot be clicked into accidentally and modified while on the browse panel. Information is consistent.



Edit

When entering Edit mode we Open a Transaction, pause the script and allow the fields to be edited. We display the correct buttons for Edit Mode at the bottom of the window for Cancel and Save. Cancel performs a Revert Transaction and Save Commits the Transaction. We additionally gray out the area outside of the left panel for focus and limiting actions with a web viewer. 



Find

On Entering Find, we set focus and set the corresponding buttons for Cancel and Perform find. We additionally gray out the area outside of the left panel for focus and limiting actions with a web viewer.



New

When creating a New Record, the user is entering data into the actual field on panel.fields We again display the correct buttons for Cancel and Save. Other buttons appear with New Record, such as the ability to select a company. 

Again, for consistency we gray out the area outside of the left panel for focus and limiting actions with a web viewer.



These techniques have proven to be successful in allowing us to be more creative with the interface Browse mode, protect data and access, and take advantage of new features in Claris FileMaker 2024. They also simplify scripting, reduce overhead, and make it easier to develop. 

As you can see the Claris FileMaker 2024 platform is really shining in its abilities. Stay tuned for a blog from James Scarpetta on the new Data API features and how we will use them.  Internally we are constantly reviewing our solutions and the features sets of FileMaker. We have made a commitment to design and use these design techniques and the features currently available to provide the best User Experience with the cleanest User Interface across all devices. By adopting these practices, it has resulted in less code, fewer layouts and a reliable experience on different layouts. Our customers love it!

Have a good week!



Here’s our original article on Contextual Mode Shifting: https://scarpettagroup.com/filemaker-contextual-mode-shifting/