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 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
- Windows
- XML
Our Library of Videos
The Virtual List technique, as it's come to be known, has been possible since the introduction of global variables with FileMaker 8. It wasn't widely known or used until Bruce Robertson started promoting its use in ways which were previously not envisioned. It can be used for more flexible printed output or showing information from multiple tables within one single portal or list view.
Essentially, you populate the contents of a $$global variable in some fashion and then parse that data into some viewable form - "on the fly" as they say.
The most common method of using this technique is to simply extract each line within the global variable using the GetValue() and Get ( RecordNumber ) functions. What makes it so powerful is the fact that the global variable can hold any data from any number of sources. This means you can mix-n-match to your heart's content.
How you get the data into the global variable can be managed in a variety of ways. Record loops, ExecuteSQL() function or even the overlooked Copy All Records script step.
In this video I showcase a technique which allows for individual portal rows to be expanded and hidden as necessary. This allows for a wide range of display possibilities. Each row can vary how it is presented using conditional formatting and the whole solution is just a great way to control how users interact with data.
Ahh.., don't you just love it when a solution pops into your head and it's super simple and works great as well.
Such was the situation when a new subscriber wrote in asking me about an older technique from 2010. While the basic premise of comparing one container field against another makes sense, it's quite a bit harder to put this into practice within the same portal.
Either the field you're dragging from will obscure the field you need to drop into or FileMaker just doesn't have the feature set in order to make it technically happen. When script triggers won't fire until after the "drop" portion of a "drag and drop" sequence" you need to figure out how to make it happen.
That's exactly what this video is about. It's a super sublime implementation to a simple feature request. Being able to support Drag & Drop within the same portal without a whole lot of hassle.
How about accomplishing it without any extra table occurrences, calculations and only one field and one script? Watch now to find out how!
One of the nicest feelings in the world is getting something for free. Especially when it really helps you out and it's valuable.
At the small cost of giving up a little bit of data, to one of the world's biggest data collectors, you can see how users use your FileMaker solution and what they do.
In fact, what you collect, and how, is totally up to you. You can control pretty much anything in terms of what you transfer to Google Analytics.
Many developers who have implemented Google's Analytics only go a short distance to what they could potentially collect. They often point to some remote site with embedded analytics code provided as the default by Google.
However, the usage of the default code is SO LIMITING. You can get as creative as you want when pushing data to Google Analytics. The big trick is to know what can be sent, how it's sent and what to do when Google has the data.
The reporting aspect, on Google's side, is where most of the power lies. What you need to do is determine what you want to push and when. Fortunately, this video has all the nitty gritty details for making things super easy for you!
FileMaker provides us with the wonderfully simple Duplicate menu option right there within its Records menu. The problem, however, with a relational database, is the fact that many times you're in need of duplicates of both a master record and any of its child records.
This video presents one of the many possible solutions to this exact issue.
You can, for example, export a set of related records and then reimport them while reassigning key fields. You can also fully script the whole process using all of the original data and simply assign new key values as you walk across a portal.
In this video, I walk through one of my favorite methods for creating related records - the Obligatory Create method. This method has a number of advantages and adds only a few extra table occurrences.
As with any technique for solving a specific problem, you must assess if the solution fits your environment and the given circumstances. Doing this comes with experience and exposure to the various possible methods. This method is just one of many.
There was a day, when either computers were simply too slow or people just weren't used to the idea of seeing themselves on the computer screen. Probably the later. The screen was for showing data, not for personal flattery.
However, the web and social media exploded and having some sort of user image, or avatar, is quite the norm these days.
Using a mobile device like an iPhone or iPad and taking advantage of FileMaker Go allows for all kinds of opportunity when it comes to capturing user images. The embedded cameras are great and take pictures which are just fine.
So fine, in fact that it may be too much information for simple use to display on the screen. There are also considerations related to the Retina display and how much more of an image you need than the actual size - it's double actually.
In this video, I provide the perfect mix of tools and information in order to really take advantage of mobile device cameras and the ability to present a picture perfect image - of whatever the user wants to use as their avatar within your FileMaker solution. Need some fancy graphics wrapped around? No problem. Just watch this video and use the code to integrate into your own FileMaker solution quite easily!
When you start your first FileMaker Go solution, for the iPad or iPhone, you may, at first, find that it's great that you can just add your FileMaker database to the device.
That unique ability, however, should be avoided at all costs - in my not so humble opinion. The way you interact with a tablet or touch device is so different than how you interact with a keyboard and mouse.
In this video, I talk about some of my learning experiences as I've worked on a number of mobile solutions. I cover some tips I've learned about designing and scripting for a FileMaker Go solution.
As mobile becomes more and more of an enterprise tool, knowing how to optimize your FileMaker Go solutions becomes more and more important!
Having personally developed with both languages and frameworks which implement strong sets of standards, I quickly found that having some form of standards imposed, allowed me to focus more on the solution once the conventions were learned. I wasn't doing the same type of thing in two different ways due to the current "known" way.
Notice, I didn't say the "right" way. There's often more than one way to accomplish something. It's like driving a car however. No matter which one I hop into, they all have many of the same parts in the same place. Steering wheel, brakes, accelerator, etc.
Sure, nuances like the radio and air conditioning may be different, but they don't move the steering wheel around on you.
This makes it easy to adapt when moving from one car to the next. It provides a basis from which I can start to learn what I may not know about.
In 2010, I started documenting some of my own personal standards for FileMaker specific development - and invited others to join in. In this video, I discuss some of those standards and the why and how they work.
Over the few years since starting the web site, the number of people using them has increased. This has allowed the standards to grow based on the feedback and input from others. This video provides a variety of topics related to standards which may help you evolve your own or take advantage of, and leverage, those which have already been started.
We've all heard it before. The mobile storm is coming - if not already here.
This means you're likely going to build a healthy number of mobile solutions. But heck, even if you're not, there's a ton of advantages to using a local file for part of your FileMaker solution.
With a local file, you can cache static data, images, media, you name it. Your local file can easily connect to any remote file and either temporarily transfer data, perform a sync or stay permanently connected.
The problem with this wonderful idea of a speedy local file is the notion of updates. How can you easily update the local file with a newer version which includes changes?
If you're comfortable with using a 100% pure FileMaker solution you can handle updates with either FileMaker Server or a peer-to-peer setup. Transferring bits across the wire, whether it be port 5003 or not, is pretty much the same.
If your FileMaker Server is already heavily loaded with normal data operations, then looking at the web server side of things is an easy approach to take. The remaining hurdle is making the update process work. This is where you can use the information in this video and the technique file to make it happen!
When it comes to using Custom Menus within FileMaker Pro, I often get the impression that many developers consider this a "nice to have" feature - not the "go to" feature it could potentially be for any solution. You'll often here developers talk about teaching users "How to use FileMaker".
What this means is that not too many developers are taking advantage of Custom Menus.
Here's the trick. Put them in from the start.
Their lack of general use may be attributed to the process of creating them - it isn't quite user friendly. You have to be willing to dive into the dialogs in order to implement. Yet, FileMaker 12 made Custom Menus even more powerful - another good reason to use them.
The good thing about Custom Menus is that once you start the process it's any easy thing to keep adding to.
So, the goal is to start simply and implement menus as you develop your solution. If you take this approach, then the "hassle" of adding them after the fact isn't really a hassle at all.
Back in October of 2012, I provided a video titled User-based Value Lists. Earlier in May of that same year, I presented Cascading Value Lists, which uses the new ExecuteSQL to generate the value list options. This video provides yet more information and another way of providing the same feature - plus many great tips along the way.
The method presented within this video does not use ExecuteSQL and may be easier to implement and manage if you're not quite ready for SQL.
As with most any software project, the goal is to provide the most power with the least amount of stuff (code) to manage. Any FileMaker solution can easily grow beyond it's maintainer's ability to understand every aspect of what they did before. If you consider a single master value list and one single script a powerful way of managing all value lists within the whole solution then you're in for a treat!