Article Tags
Click or tap one of the article tags to filter down to a smaller selection.
- Accounts
- Add-ons
- AI
- Alerts
- Analysis
- APIs
- Apple Maps
- Auto-Enter
- Barcodes
- Base64
- BaseElements Plugin
- bBox
- Breadcrumbs
- Button Bars
- Caching
- Calculations
- Calendars
- Card Windows
- Charting
- Checkboxes
- Code Editing
- Code testing
- Coding
- Color Picker
- Colors
- Conditional Formatting
- Containers
- Context Management
- Cropping
- Crypto
- CSV
- cURL
- Custom Functions
- Custom Menus
- Data API
- Data Capture
- Data processing
- Data structure
- Data Viewer
- Date Ranges
- Dates
- Debugging
- Deployment
- Developer Tools
- Dialog Boxes
- Docker
- Drag-n-Drop
- Drop-down List
- Dropbox
- Duplicates
- Duplicating records
- Encryption
- Error handling
- Events
- Excel
- ExecuteSQL
- Exporting
- External Authentication
- External Files
- Field Formatting
- Field Storage
- Fields
- File IO
- File Management
- File Sharing
- FileMaker Go
- FileMaker Server
- FileMaker Settings
- Filtering
- Find & Replace
- Find Mode
- Found Sets
- Functions
- Fundamentals
- Global Fields
- Global Variables
- Google Forms
- Google Maps
- Google Services
- Graphics
- Grid
- Grouping
- Hierarchies
- Highlighting
- Icons
- Images
- Importing
- Indicators
- Inspector palette
- iOS
- Java/Groovy
- JavaScript
- Join Tables
- JSON
- Key fields
- Layout Design
- Layout Mode
- Layout Parts
- List function
- Logging
- Looping
- Mapping
- Marking Records
- Media Storage
- Menus
- Merge fields
- Messaging
- Microsoft Surface
- Mobile design
- MonkeyBread plug-in
- Multi-key fields
- Multi-option fields
- Naming Conventions
- Navigation
- New Release
- Node-RED
- Notifications
- Oauth
- Object management
- OCR
- OnGestureTap
- OnLayoutKeystroke
- OnObjectKeystroke
- Parsing HTML
- Perform Script on Server
- Performance
- Permissions
- Photo manipulation
- Pickers
- Pivot tables
- Pop-ups
- Popovers
- Portals
- Preferences
- Printing
- Privilege sets
- Product review
- Productivity
- Progress Bars
- PSOS
- Python
- Quick Find
- Record Locking
- Regex
- Relationship Graph
- Reporting
- REST
- Sankey
- Schema
- Script Parameters
- Script Triggers
- Scripting
- ScriptMaster
- SDK
- Searching
- Security
- Separation Model
- Set Variable
- Settings
- Shortcuts
- Sliders
- Snapshot Links
- Sorting
- Spelling
- Spreadsheets
- Startup
- Summary Fields
- SVG
- Syntax
- Syntax Highlighting
- Tab Controls
- Table View
- Tagging
- Terminology
- Text Parsing
- Themes
- Time fields
- Time Savings
- Tips
- Tools
- Transactions
- Tricks
- Twilio
- UI
- Updating
- User Interface
- Validations
- Value Lists
- vCalendar
- Virtual list
- Web Forms
- Web Scraping
- Web Services
- Web Viewers
- Webhooks
- Windows
- XML
Our Library of Videos
As a software/database developer, one of your primary goals is making your solutions easy to use. This means users should be able to perform common queries by simply clicking buttons which run the queries automatically.
This is probably something you already do. But, the big question is this, “Do you make it easy on yourself for creating those simple queries?” Many developers will create a unique script for each of the various queries, and in some cases this is just fine. It’s when you start feeling the overwhelm of a growing list of scripts when you start to ask the really important questions.
Is it really possible to compose most of your scripted Finds using one single script? You’d better believe it is! In fact, if you abstract the searching part of your solution, it becomes very easy to create all kinds of queries, on demand, right there within the user interface.
When you abstract your search queries, you reduce the number of scripts within your solution and make it both quick and easy to automate the searching functionality of your solution.
As with all mastery of any trade, it’s a matter of familiarity with the tools, along with practiced skill, in which a craftsman can hone his or her proficiency. In development, it’s often a matter of knowing which tools are available, and how to use them, which may make the difference.
In this video, I showcase the tools I use, their most important features and how I personally use them. If becoming a more efficient and capable FileMaker developer is one of your goals then make sure to watch this video.
What would a database solution be without the ability to send email? Well, it would be a database solution without the ability to send email - but who wants that right?
Email is obviously an integral part of our modern day communication. And, despite what the Twitters, Facebooks and Instagrams of the world would have you believe, email is here to stay.
The easiest way to add email support to a FileMaker database is to simply use the Send Mail script step. But, that’s boring, and sometimes it doesn’t work. Especially when you’re using an email client not supported by FileMaker. The Send Mail step alone also has limited use when, most of the time, the intended objective is to integrate data from the database.
Therefore, we need to integrate the data from our fields. The easiest way to do this is to use FileMaker’s <<mergeFields>> right within the content of a text block somewhere on the layout, or off to the side of the layout, and then using the function GetLayoutObjectAttribute ( “My_Merge_Email” ; "content" ).
The problem we hit is that this is not user friendly. You don’t often give users the ability to edit layouts. So why not emulate the way FileMaker works with merge fields and simply do the same thing using data which is stored within fields?
This video showcases one of the most streamlined and easy-to-implement solutions for handling merge values into content stored within a field. Using the content provided here you’ll have an email merging and sending solution within mere minutes every time you need it!
As we’ve all likely heard before, a movie isn’t just great because of the cinematography, it’s the sound that counts just as much. What you hear, not just see, is what makes the difference between good and great.
So, if sound is so critical to a movie, then the analogy to a FileMaker layout is color. Sure, anyone can move and arrange fields and objects into some semblance of order. And, using FileMaker’s layout objects to furnish your layout for the best possible user experience does take a bit of skill, but nailing down a color palette for your theme is just as critical as all the rest. Sticking to those colors is what adds that final bit of class which makes a design look great.
The wonderful thing about the Internet, and the world of freely available tools, is that you can generate your color palette super easily. Personally, I enjoy using an online tool called Paletton.
Well, one day while creating a new design, I wanted to easily integrate the palette of colors I had chosen using the tool. Since this wasn’t being done for me, I decided to do it myself. The result was a handy little tool where you can not only take advantage of the tool but learn a little more FileMaker along the way!
When developing in FileMaker, the feature set it offers accounts for a good number of common tasks and provides easy solutions for most of these problems. There are a few issues, however, which FileMaker either hasn’t addressed or wants to leave up to the developer.
One of these is saving the current window state. This applies to tab panels, sliders and moving from layout to layout or when closing the file. The desired result, for the end user, is to simply return to where they left off when returning to a layout.
Obviously, it’s very comforting to come home to the same arrangement of furniture after leaving your home. If a user leaves a layout having made a complex selection of tab panels, sliders and button bars then it makes sense to be the courteous developer and put them back into the same state.
This video showcases a powerful method for saving the state of windows. It applies to all panel type objects and even when closing the file. If keeping your user interface nice and tidy is something you’re interested in for your own solutions then make sure and watch this video!
Most of FileMaker’s layout objects allow you to easily specify settings directly on those objects. For example, using Button Bars for the purpose of navigation means you can specify which of the multiple segments should be presented as active. Of course, your can also easily target which layout a button click should take the user to without creating a dedicated script.
The problem, however, is that FileMaker systems end up growing ever larger and the evolution process means you’re constantly making changes as you develop the system. Add a segment here, change a Perform Script there, etc.
When it comes to Button Bars, they provide a very simple way of managing multiple buttons. They allow you to use features like the Hide calc and can dynamically display their labels thanks to access to FileMaker’s calc engine.
If you end up with a growing FileMaker solution, and you’re constantly copy/pasting and having to double-click into the Button Setup HUD, then you quickly come across a pain which can easily be avoided.
This video is about decoupling references from Button Bars when using them for the purpose of navigation. If you like the features which Button Bars provide, then knowing their in’s and out’s is certainly critical know-how.
The security of your FileMaker data should always be a top priority. If you don’t know how to implement FileMaker’s Privilege Sets, then you need to learn as quickly as possible.
While the dialogs for security can seem a bit obscure and difficult, it only takes a few trips in and out to get a feel for how you can lock things down.
In this video, I showcase a simple system I created which covers topics such as Granting full access to scripts and why, locking off security related fields, using Global fields and local fields for temporary access escalation and other security related items dealing with privilege sets.
More and more these days, we find ourselves jumping back and forth between desktop computers and using our increasingly convenient mobile devices. At least, that’s how it’s been with many of my personal FileMaker projects./Users/matt/Desktop/filemaker-desktop-mobile-design.png
While designing for each target device, in an ideal world, is a luxury we’d like to afford, there just isn’t an unlimited supply of time and money.
The solution is to create a hybrid design which will work as well on mobile as it does on desktop. In order to accomplish this, you have to leave some of your “desktop ways” behind and adopt some of the minimalism you find within mobile design.
While FileMaker is adding more and more for the mobile platform, we still have a somewhat limited set of field widgets for interacting with data. At least as it relates to portals and related data. On mobile, a portal typically needs to be scrollable via a finger or thumb flick, yet on desktop we tend to want to enter/edit data quickly because of the tab key and physical keyboard access.
Striking a balance is the goal, and it can certainly be accomplished with the tools we have today. This video is about a common pattern for input of data. It covers a number of tips and tricks about keeping data presentation minimal yet exposing the necessary functionality.
Creating a user interface, which looks good at any resolution, was never a concern before there were smartphones. It was when they started packing more and more pixels within the same area that graphics started having issues. With the popular formats of PNG and JPEG, you’re limited in terms of displaying them. The limit is the maximum size/resolution at which the file is exported at. From there, you can only go down, scaling up will cause the obvious pixelation we’re familiar with. So it’s always been a fine balance between the size of the file and the resolution desired.
With FileMaker 14 and higher, they added support for the popular SVG file format. It’s actually not a file format as much as it is a text format. You see, SVG is just XML which can be parsed and rendered as needed. With FileMaker adding support for SVG within buttons, we can now take advantage of this very slim format.
The benefits of understanding how FileMaker has implemented support for SVG allows for all kinds of creative tricks. With the right settings, you can optionally change the color of an SVG icon programmatically. If you know you can hide parts of that icon then you can do even more UI trickery.
This video is all about understanding how you can manipulate and change the text content of an SVG file. It requires some confidence with text parsing, but once you get the file into a FileMaker field, you can manipulate to your heart’s content.
When you attempt to translate human interaction from the real world into a database, that translation isn’t always the most ideal.
Within a database, you’re storing data within rows and columns and the real world isn’t always laid out so neatly. This is where using an image or graphic fills the gap and shortens that bridge of understanding for the user.
A good example would be a dental office and scheduling appointments within 2 hour blocks of time throughout the day. The office has a physical layout and a fixed number of stations. True, your standard calendaring application can take care of this, however, the person interacting with that data has to interpret it and translate it into understanding which relates to the physical world in which they are interacting with the chairs and equipment. What if certain procedures require certain facilities - as they most often do?
The ideal solution then, in many cases, is to allow a person to interact with that data in the most visually accurate way - with an image or graphic. The problem is, people move things around. But, what if this process can be accomplished super easily - why not go for the image?
In this video, I showcase how you can easily take the output of a standard SVG graphic and provide a level of interaction which allows for solving a lot of real-world data translation issues. If you like making “easy-to-use” solutions, then make sure and add this knowledge to your FileMaker tool belt!