Hey man, Free-base64 is cool with this FileMaker Pro 13 Tip-n-Trick of Creating a Progress Status Bar
Or for those who are true nerdy geeks -
All your base64 are belong to us, But We’ll Share this FileMaker Pro 13 Tip-n-Trick of Creating a Progress Status Bar
Andy Persons shares his first FileMaker Pro 13 Tip-n-Trick that demonstrates ProgressBar(), a custom function that provides a simple and lightweight progress status bar.
What Got Me Thinking
When I saw the Base64Decode 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 Base64Encode() 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 I needed to rethink my approach. I researched base 64 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 base 64 and created a custom function that replaces the color pixel placeholders with the specified colors! Easy as pie!
I hope you find the accompanying demo file useful. Merry Christmas!
How It Works
This technique makes use of FileMaker Pro 13′s new Base64Decode() 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.
About Andy Persons: Andy is a Senior Lead FileMaker Pro Developer with Excelisys: Andy has been an industry leading FileMaker Pro developer creating FileMaker Pro solutions for over 17 years. In addition to being one of the lead developers of three top-rated and most-downloaded FileMaker Pro solutions of all-time; the FileMaker Business Tracker and the Excelisys eX-BizTracker & eX-BizTracker Pro jump-start solutions, he has shared his incredible and advanced talents by authoring numerous Tips-n-Tricks files and white papers, including Hierarchical Portals, Recursive Calcs, Audit Logs and Drag-and-Drop using FileMaker Pro.
*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.