Create a Progress Status Bar in FileMaker Pro 13 with the Base64 Decode Function
Andy Persons shares his FileMaker Pro 13 Tip-n-Trick that features the ProgressBar, a custom function that provides a simple and lightweight progress status bar.
What Got Me Thinking …
When I saw the Base64 Decode function in the newly released FileMaker 13, my first thought was, “Why, you could theoretically calculate any image you want!” My second thought was, “Would the complexity be worth it?” So, I decided to start with something simple: a 1-by-100-pixel graphic to display a progress bar. First, I tried creating .png images of various sizes, encoding them using Base64 Encode and comparing what changed. No go. I couldn’t discern any consistent patterns.
Next, I tried the same process using .bmp files. Better, but the patterns were still inconsistent.
Finally, I decided to rethink my approach. I researched Base64 a bit more and realized that the patterns weren’t consistent because it concatenates all bits from the original and encodes them in 6-bit chunks. The best approach would be to build the bitmap from the ground up, if feasible.
So, I looked up the .bmp format on Wikipedia, built a basic bitmap file in hex, converted it to Base64 and created a custom function that replaces the color pixel placeholders with the specified colors! Easy as pie!
I hope you find the accompanying file useful.
How It Works
This technique makes use of FileMaker Pro 13’s new FileMaker Base64 Decode function to convert text into an image. The ProgressBar custom function includes a pre-built 1-x-100-pixel .bmp base image and inserts the foreground or background pixels based on the “progress” parameter.
The resulting container is then set to enlarge or reduce without maintaining proportions and the padding is set to zero to ensure the graphic fills it completely.
*This article is provided for free and as-is, use and play at your own risk – but have fun! Excelisys does not not provide free support or assistance with any of the above. If you would like help or assistance, please consider retaining Excelisys’ FileMaker Pro consulting & development services.
About Excelisys, Inc.: Founded in 2001, Excelisys (www.excelisys.com) is a dedicated organization specializing in the designing, developing, customizing, supporting, consulting, migrating, upgrading, tweaking, fixing, and integrating of FileMaker Pro solutions, FileMaker Go solutions, MySQL, PostgreSQL, QuickBooks-FileMaker Pro Integration, Excel and MS Access FileMaker Pro conversions/migrations, iPhone and iPad business solutions, and other various database technologies and frameworks that automate your organization’s data solution needs for use on the web, mobile, and desktop platforms. Contact Excelisys today for a free estimate and consultation about your business software automation needs @ 866-592-9235.