ISO FileMaker Magazine: FileMaker Video Tutorials, Templates, Help & More

Navigation

Easier Development

Click this video (use the full screen or click to go to YouTube) to see what you may be missing in your copy of FileMaker Pro! I don't develop without it!

Tools & Resources

Subscribers Only

Efficient Checkbox Data Storage

Posted by: Editor / Thursday, December 16, 2010 – 4:51pm

by Matt Petrowsky

20
 minutes

It's one of those somewhat trivial projects (or so you think) until you get down to the "nitty gritty" of making everything work.

"All we need to do..." is always WAY more complex than what's thought. So it make sense that storing data in the most efficient and usable manner would go without saying. However, time and time again, I see database files where the data is stored the "FileMaker easy way" and this just shouldn't be done.

There are those rare cases when you should make a value list with your common names such as "Kindergarten, 1st grade, 2nd grade, etc.". But, more often than not, you should be storing your data in a more optimized fashion. Making it work within the user interface is what becomes the issue of implementation.

This video presents the optimized and efficient manner of storing some of your checkbox and radio button data. It's a great lesson on how to really structure some complex stuff in a very easy fashion!

Details: Released - 12/15/2010 / Size - 29.69 MB / Length - 20 min

Manipulating Files & Folders without plugins

Posted by: Editor / Wednesday, December 8, 2010 – 10:13pm

by Matt Petrowsky

40
 minutes

Errors, problems and troubles - Oh my! It seems as if more than half the coding done is for solving problems created by writing the code in the first place. Don't worry though, it happens to all of us. It's part of the coding process. You simply can't know all the variables.

You see, you're working in a known environment. The issues you fix are related to the problems which exist in your own computing environment. However, if you're putting something out there, you simply can't account for all possible issues. Not from the start.

Hopefully, at least on this issue, if you can learn from my lessons, I'll save you a ton of time. In my situation, with my Theme Studio product, it turns out that a good number of people using FileMaker do not use AutoUpdate, or at least have never had a reason to.

In FileMaker 9, FileMaker Inc. added a new shared extensions path for plugins. This shared extensions folder is where you can install a plugin and have it running for versions 9, 10 and 11. Here are the paths.

Windows XP:
C:\Documents and Settings\User Name\Local Settings\Application Data\FileMaker\Extensions

Windows Vista/7:
C:\Users\User Name\AppData\Local\FileMaker\Extensions

Mac OS X:
Macintosh HD/Users/User Name/Library/Application Support/FileMaker/Extensions

When trying to install a plugin, from a container, into this location, I was getting reports of errors and not being able to install the plugin. Silly OS messages would appear like "You don't have enough disk space.", etc.

There is where the topic of this video came in. Typically, I'm using a plugin to manipulate files and folders. I opt to use 360Work's ScriptMaster (of which there is a free version). The problem, however, if you haven't already figured it out, is that I can't us a plugin if it's not already installed yet. And I needed a folder in order to install the plugin - otherwise FileMaker was throwing an error.

So the question was, "How can I create a folder in order to install a plugin via AutoUpdate?"

The answer was to use the OS to create the folder. So here you have a video about using the OS in order to do all kinds of things. The example shown is that of working with folders, but it doesn't stop there.

If you understand the topic taught in this video then the limits to what you can do with FileMaker alone will expand SIGNIFICANTLY!

Details: Released - 12/8/2010 / Size - 63.48 MB / Length - 40 min

Boolean Checkbox Efficiencies

Posted by: Editor / Tuesday, November 16, 2010 – 8:20pm

by Matt Petrowsky

17
 minutes

On/Off checkboxes are wonderful things. While, in life, we often wish we had an on/off checkbox for certain people, it certainly is much easier within a database - and quicker to accomplish.

In fact, it's so easy, you can have an unlimited number of on/off checkboxes without ever having to write a single script. Yes, you heard it. No scripts.

"But wait?" you say, "I simply add my on/off checkbox to my layout. I didn't need any scripts in the first place." To answer, I say "Yes, but they probably aren't being stored as efficiently as they could be, and if they are, you're not following conventions which users are already use to, in particular, being able to to click the checkbox label as well as the checkbox."

So along comes this video about scriptless checkboxes and being able to select ranges of checkboxes within a list view. It presents the best options for checkbox storage, it allows you to limit the amount of database clutter and reduces the amount of time it takes to add them. Combine these all together and you wonder if you couldn't be doing it better than you are right now. Need to figure it all out? Watch this video and you'll soon know!

Details: Released - 11/16/2010 / Size - 20.56 MB / Length - 17 min

Even Easier Error Logging

Posted by: Editor / Wednesday, November 3, 2010 – 5:02pm

by Matt Petrowsky

34
 minutes

About 10 months ago, I released a video and file about Error trapping and logging. Since that time, I've improved my system and made it even easier to log the errors. As I mentioned in the previous article, it's really nice to see where errors are happening. You get a much clearer picture of any issues when they happen. When it comes to users, knowing as many details about the error the better - it sure does beat the conveniently vague "It doesn't work".

So you start using Set Error Capture [on] and you think you're good to go with Get ( LastError ). This is, of course, until you start performing multiple steps within one script which could cause errors and you want to log those errors to a log in order to review them.

Being notified about when an error happens and what type is also nice. Wait, "type of error"? Isn't FileMaker the only potential for an error? Nope, not quite.

You can experience any number of errors in your FileMaker solution. FileMaker errors, plug-in errors, custom function generated errors and your own application errors.

This means you need a robust system for handling and managing these errors. Fortunately, I've given you a great head start with this video and technique file!

Details: Released - 11/3/2010 / Size - 40.54 MB / Length - 34 min

Snapshot Launcher

Posted by: Editor / Monday, October 18, 2010 – 8:09pm

by Matt Petrowsky

29
 minutes

One of the new features released in FileMaker 11 were Snapshot links. While perfectly fine for your average FileMaker solution, they aren't quite as useful when you've got a really custom setup running.

I'm talking about the kind of setup where your interface is driven based on global fields used to store keys in order to view related data. So, the assumption Snapshot links makes is based on your use of FileMaker the way FileMaker is designed - not necessarily the way you've designed your solution. They don't quite work for your custom layout based on one single record from a table full of globals used to view related data.

When you're using global fields to drive what is shown in a portal, or for showing related data then you've got to get creative to use this useful new feature. Fortunately, as is the case with many situations, you just have to "code it up" and make the solution work for you as well as it works for FileMaker's default behavior.

Thanks to Tim Anderson and a technique he sent in, I've added a few changes and made his Snapshot Launcher a solution you can use on an interface which uses global fields to drive the user interface output.

Whether you email, attach to a calendar, or simply save for later reference, you can use this Snapshot Launcher technique to bring back any set of data you can possibly imagine. It really is a powerful technique for today's cloud-based always-connected world!

Details: Released - 10/18/2010 / Size - 36.52 MB / Length - 29 min

Defensive coding with literal references

Posted by: Editor / Monday, October 11, 2010 – 5:36pm

by Matt Petrowsky

31
 minutes

Wow, if that isn't a mouthful! "Defensive coding with literal references". This likely wasn't even on your FileMaker radar. In fact, FileMaker takes care of so many things for you, it's easy to think your FileMaker solution will just run forever. Funny thing is, there still are FileMaker 5/6 solutions running to this day - I've seen them!

In the days prior to the .fp7 file format, it was actually quite hard to create your own solution errors outside of the possible errors which FileMaker already accounts for. Unless, it was something silly like deleting a layout entirely when it was used by multiple scripts.

However, with today's more powerful FileMaker, you can certainly create a solution which will break in a heartbeat. As you add more and more complexity, you also increase the potential for things that may break. Here's what I mean. You use a Go To Layout [] script step, and you select the option to go to a layout by name - via calculation code. You input the name of your layout as "Customer list". Three months down the road you rename that layout to "Customer filter list" because it now more appropriately identifies its application.

Guess what broke? Your code! While this example is likely easy to track down and fix, it's even better to build in some preventative checking for these types of situations. That's exactly what this video is about. Using a dedicated technique for making sure your literal references can be more easily fixed when, and if, they break.

The easiest fix is to catch the issue before you release or set up some type of notification. Here are just a few of the ways you can cause yourself some headaches using literal references.

  • Go to Layout [ "some layout" ]
  • Go to Object [ Object Name: "some object" ]
  • Set Field By Name [ "literal field"; "some value" ]
  • Select Window [ Name: "some window name"; Current file ]

These script steps all provide possible literal references, and you want to make sure you won't get in trouble with them! Fortunately, I have a great solution!

Details: Released - 10/11/2010 / Size - 36.87 MB / Length - 31 min
Filed under: |

Using Web Services

Posted by: Editor / Wednesday, September 29, 2010 – 4:30pm

by Matt Petrowsky

38
 minutes

The world of the web is rapidly becoming the world of the web & cloud. Where much of what we consume, such as data, resources and media is not stored, manipulated or managed on the devices we use. The laptop you used a while ago, with the stored sales data, will soon be replaced by the tablet with 4g or super wi-fi access to immediate data results.

The concept of web services isn't new, it's been around for more than a decade now and it's only now that the reality is actually happening. One of the central issues behind this finally happening is not just technology, but a willingness to trust.

The "convenience factor" is winning out over any lack of trust - look at how much stuff people upload to Facebook! Of course, it's convenience, and a bit of ignorance by the less technically inclined. So what does all this talk about trust, ignorance and convenience have to do with FileMaker. Well, it's all about web services.

Two of those funny-sounding protocols for web services have been available in a very convenient plug-in for FileMaker. Creating a Mashup (a combination of a variety of technologies or technological services) is certainly doable within a FileMaker solution. All you need to know is a little bit of how things work and you're off to the races.

This video will give you the basics of using web services, and if you're left wondering what you might use web services for then how about these suggestions.

  • Package delivery confirmations from FedEx or UPS
  • Uploading designated pictures to Flickr
  • Pulling down invoices from PayPal
  • Pulling real-time stock quotes (an oldie but a goodie)
  • Generating barcodes which FileMaker can't do without an additional plug-in
  • Integration with AdSense and AdWords accounts
  • Integrating with eBay or Amazon marketplaces for selling things
  • Weather based operations
  • or Simply getting a listing of movies

Plus many more possibilities!

Details: Released - 9/29/2010 / Size - 52.64 MB / Length - 38 min

Function Scripting Evolved

Posted by: Editor / Wednesday, September 15, 2010 – 8:28pm

by Matt Petrowsky

37
 minutes

When FileMaker 8 was released in 2005 it was a game changer for the world of FileMaker scripting. You could now pass data into scripts from buttons - added to already being able to access data from within the script. It wasn't long after its release that developers wanted to pass information to scripts in a more structured fashion. "Passing multiple parameters" is a common term in FileMaker development and there are many ways to accomplish it.

In 2006 I released a video about the topic of "Function Scripting". It was a very popular article which advanced the idea of using scripts as something similar to functions and treating them more like methods in object oriented languages.

I simply combined two different sets of custom functions from two very smart developers. Over the years, I've used the method almost exclusively for passing information into scripts. Recently, however, I've started to use an evolved method of passing information into scripts.

The method I'm now using, focuses a great deal on code readability and facilitates both strict and relaxed parameter requirements. The function is a multipurpose function which can be used in many areas of your FileMaker solution. In this video, I walk through the evolution, some of the other options you have available and why I've chosen to adopt this new method of passing parameters into scripts.

Details: Released - 9/15/2010 / Size - 39.46 MB / Length - 37 min

Making the most of Advanced Conditional Formatting

Posted by: Editor / Tuesday, September 7, 2010 – 4:32pm

by Matt Petrowsky

20
 minutes

Providing users of your database with every possible clue, indicating the status or state of things, is something you should seriously consider - every time you start to work in Layout mode.

I must admit, I was personally a slow adopter of Conditional Formatting when it was introduced in FileMaker 9. It's been a few years now, and there are a lot of things you can do with it. Yes, it's lacking, in terms of being feature complete. You can't change the color of lines, it only applies to fields and text (none of the vector objects like rectangles, ovals, etc.) and you can't make things disappear with it. However, what you can do with it, should certainly be used.

When you combine useful logic, understand how to "sort of" hide things, and know a few of the behind-the-scenes tricks, you can really leverage this FileMaker feature. In this video, I present pretty much everything I know about using this feature for the purpose of adjusting what your layout will display. If you have your own tricks for using Conditional Formatting I'd love to hear them! Post a comment below.

Details: Released - 9/7/2010 / Size - 22.12 MB / Length - 20 min

Easy Dynamic Portal Filtering

Posted by: Editor / Thursday, August 26, 2010 – 7:27pm

by Matt Petrowsky

22
 minutes

Little by little, newer versions of FileMaker have been making it easier to accomplish tasks which typically required "workarounds" to provide certain features.

When it comes to filtering portals, the previous method was to use a dedicated relationship in order to filter out related data - which is still valid in a variety of situations. However, with the release of FileMaker 11, the new filter portal option, presented as a check box on the portal settings dialog, offers a much easier method for filtering portals.

Initially, there were some harsh critics, as the filter was a "display only" feature and did not adjust calculations which used the same relationship. Enter a few pieces of critical know-how and you get the exact feature you were expecting with all the bells and whistles.

This video showcases how to fully leverage the new filtered portal option within FileMaker 11. The example shown is one of the most common, where filtering is done on both a first and last name where either part contains a sequence of characters. If you're seeking that ultimate degree of filtered portal polish, then look no further than this video!

Details: Released - 8/26/2010 / Size - 20.82 MB / Length - 22 min
Syndicate content