FileMaker Pro Business Solutions — On the Side

I create custom business solutions for iPad, iPhone, Windows, Mac and the web — on the side, in my spare time.

Some of the solutions are for my own use, managing construction projects. Other solutions help others, mostly entrepreneurs, to manage some aspect of their small business. Very niche. Very focused.

FBA certified since 2013.

FBA_Logo_4c_apple

FBA certified means that I belong to the FileMaker Business Alliance, which allows me to resell FileMaker software at a discount. One must submit sample Solutions to FileMaker Inc before becoming a member. They check the samples to make sure applicants meet the FBA’s technical standards. I’ve been a proud member since 2013.

YOU ARE FANTASTIC!!!! thank you a lot!!!
— Mara Cataldi, Organization Manager, L’altra Italia

Clients
My clients are not big, but they are small. 😀
And medium sized. In various industries.

    Clients include Data Bay Media, Dura-GRIT Inc., Dynamic Greens, Guardian Home Inspectors, L’altra Italia, Memory and Company, Pandor Productions, Quinn Investigations Inc., William Knapp Limited, Woodward Meat Purveyors Inc., and York Auto.

Industries served: Automotive, Agriculture, Forestry, Fashion, Film, Financial, Live Events, Manufacturing, Health, Food, and my personal favourite… Construction.

I’ve also subcontracted for some of Canada’s leading FileMaker Pro Designers / Developers.

Leo was hired on a project basis. He was very competent, courteous and thorough. He asked good questions. We liked his logical approach and understood his explanations easily. We are still happily using the streamlined system that Leo developed for us. We would not hesitate to recommend Leo to other FileMaker users, they would certainly benefit from his logical approach and his thoroughness.
— Roger Mason, Owner, Dura-GRIT Inc.

Streamline your business
With custom business solutions for iPad, iPhone, desktop and web.

FileMaker_icons
FileMaker is cross-platform compatible with Windows, Mac, iPad, iPhone, iPod Touch and the web. Learn more about FileMaker.

Services include:
● design and development of new solutions
● troubleshooting and modification of existing files
● custom syncing solutions for iPads and iPhones
● process and systems analyses
● third party hosting
● strategies for vertical market
● coaching for developers and do-it-yourselfers

Does exactly what we wanted.
— Mike Meehan, William Knapp Limited

B2B Custom Solutions
I like working with entrepreneurs that understand the benefits of custom software. If you want to distinguish yourself from your competition — in a real way — create a custom business solution that supports, augments, and elevates your workflow.

    Off-the-shelf software often has features not relevant to your business. Irrelevant features confuse your users and slow them down. And some features might be missing — features that are useful or even critical to your business.

Even so-called industry software cannot pretend to know your business. At best, they know your industry.

My custom software solutions support and enhance your business processes.

Save on FileMaker products

Save on FileMaker products. I am an authorized FileMaker reseller, which means I can save you a few points on licensing. Call me before you buy:
● FileMaker software
● Volume license agreements
● Site license agreements
● Maintenance agreements

Awesome, works perfectly. We always got a quick response and the solutions were completed in excellent time.
— Brandon Woodward, Woodward Meat Purveyors Inc.

ROI
Businesses that use my custom solutions enjoy a high return on investment. I look for ways to streamline your process and eliminate waste. Think Lean production.

    As a mechanical engineer and a FileMaker Pro developer, I am uniquely positioned to assess problems in your workflow and to fix them. The result saves you time and money.

Team Leo
I can’t do it all myself. But I know people. After four Developer Conferences in the U.S. and 31 meetups in Toronto, I’ve gotten to know a community of specialized developers that can tackle any project. The projects are managed by me personally in close communication with you. Depending on your needs, I do the work myself, or select the right team of skilled developers, contemporary designers and makers of great code. These are very smart cats.

“If you want to go quickly, go alone. 
If you want to go far, go together.”
— old African proverb

Technologies covered:
● HTML5 and CSS3
● PHP and MySQL
● WordPress
● FileMaker Pro

Solutions built:
● document management
● scheduling and cost tracking
● stock portfolio and options trading
● event management
● syncing iOS
● purchase orders
● payment gateways

P Eng Logo

LDriskAssessment

This FMP Solution was introduced in our Store in 2014. The Store is closed, but the Solution is preserved here, for those interested in converting their paper forms to iOS.

LDriskAssessment
Record and report hazards. And followup with before and after pics. Due diligence, made easy.
● record Hazard Risk Assessments
● send professional reports from your iOS device
● say it with pictures, and followup, before and after

Free to download, plus in-app purchase.

LDriskAssesment

From your iOS device:
Step 1 - Download FileMaker Go

Step 2 - Download LDriskAssessment

Release Notes:
v1.06 – Jul 16, 2014 – moved solution to new server. Details.
v1.03 – Apr 23, 2014 – fixed “Check for Updates” on About screen
v1.02 – Mar 21, 2014 – minor bug fixes in list view
v1.00 – Feb 24, 2014 – initial release

=====
System Requirements
– FileMaker Go 15
– iOS device (like iPhone or iPad) running iOS 6 or later

Instructions
From your iPad or iPhone:
1. Download FileMaker Go 15 from the App Store
2. Download the iOS solutions above.

The Solutions are fully functional, with all but PRO features locked. Unlock PRO features using “in-app” purchase.

How To Video

=====
LDriskAssessment

=====

P Eng Logo

LDworkOrders

This FMP Solution was introduced in our Store in 2014. The Store is closed, but the Solution is preserved here, for those interested in converting their paper forms to iOS.

LDworkOrders
It’s about Time… and Material
● create time-and-material Work Orders on iPad or iPhone
● capture client signatures on your device
● email signed Work Orders

Free to download, with in-app purchase.

LDworkOrders

From your iOS device:
Step 1 - Download FileMaker Go

Step 2 - Download LDworkOrders

Release Notes:
v1.10 – Jul 16, 2014 – moved solution to new server. Details.
v1.07 – Apr 23, 2014 – fixed “Check for Updates” on About screen
v1.06 – Feb 24, 2014 – UI tweaks.
v1.05 – Jan 30, 2014 – Mostly UI tweaks, some minor bug fixes
v1.03 – Jan 27, 2014 – UI tweaks and minor bug fixes
v1.01 – Jan 20, 2014 – added PayPal integration for PRO; UI tweaks
v1.00 – Jan 14, 2014 – initial release.

=====
System Requirements
– FileMaker Go 15
– iOS device (like iPhone or iPad) running iOS 6 or later

Instructions
From your iPad or iPhone:
1. Download FileMaker Go 15 from the App Store
2. Download the iOS solutions above.

The Solutions are fully functional, with all but PRO features locked. Unlock PRO features using “in-app” purchase.

How To Video

=====

P Eng Logo

Combine PDFs – Without Using FM Append

merge-pdf

Ever wanted to combine PDFs using FileMaker? Here’s a sample file that does the trick.

LDprototype_combinePDFs 002
[EDIT: Scroll down for new protytype.]

The sample file combines PDF files that are stored in containers. It uses 360 Works’ Scriptmaster to register external functions that work their magic on the PDF files. But let’s back up a bit.

When I first looked into this, I thought, “This should be easy.” Just use Append to existing PDF, an option in FileMaker’s Save Records as PDF script step.

Nuh-uh. The Append option only works if the PDF is generated from a FileMaker record. The Append option does not work for PDFs that are stored in containers.

So, I searched and discovered Scriptmaster, plus a custom jar library, which I think is called itext. Not sure, but I’ve heard that itext has licensing restrictions, which prohibit commercial use.

Anyway, I’m a novice when it comes to jar libraries. Others have commented that not all my script steps are necessary. Thing is, the prototype works. And until I see something better, I’m sticking with it.

Acknowledgements

1. 360 Works for their Scriptmaster awesomeness
2. Ocean West on FMForums for his/her MergePDF external function
3. John Renfrew for his help on the FileMaker Community Forum.
4. Matt Petrowsky for his FileOSPath custom function

Update
2015-12-16 – The prototype broke when ScriptMaster was updated. Or maybe it was the prototype. All I know is that the prototype appears to work OK using ScriptMaster v 4.32. Check it out…

LDprototype_combinePDFs 003

Update
2016-01-09 – The prototype now includes ScriptMaster v4.32 for Windows. Plus script steps that test for:
1. The presence of v4.32
2. The system platform (Windows or Mac)
3. The application architecture (Windows 32- or 64-bit)

Unfortunately, this latest version of the prototype was not tested on Windows. None of the prototypes were. So, I’m really curious if it even works.

Crossing my fingers…

LDprototype_combinePDFs 004

Calculating a Subscription’s Expiration Date

UPDATE Sep 2, 2014
The prototype file was kindly modified by erolst. It’s much better now. Thank you erolst.
LDprototype_subscription_eosMOD.fmp12

ORIGINAL POST
I posed a question on FileMaker’s developer forum today, and received a great response (thank you erolst), which I prototyped.

Goal
Report the status of a user’s subscription.

Background / Use Case
A mobile file is free on FM Go. Paid subscriptions are offered on the hosted file. The hosted file allows the user to sync the mobile file and share data with other users. Three types of subscriptions are offered: one month, six months, or twelve months. Users can purchase any type of subscription at any time.

Sample Data
The hosted file includes a [User] table and a [UserLog] table. The latter records user “actions” and corresponding time stamp. For example:

timestamp | action | monthsPurchased | c_expirationDate
2012-08-28 17:33:46 | Paid one month. | 1 | 2012-09-28
2012-08-28 17:53:22 | Paid six months. | 6 | 2013-02-28
2013-08-28 23:31:36 | Paid six months. | 6 | 2014-02-28
2013-08-28 23:34:14 | Paid twelve months. | 12 | 2014-08-28

Commentary on Sample Data
For the sake of defining some terms, and also for the sake of using plain language…
Line 1 – the user “subscribes”
Line 2 – the user “renews” subscription
Line 3 – the user “resubscribes”
Line 4 – the user “renews” subscription

Problem
Notice the calculated result in line 2? The expiration date is wrong because it fails to take into account the user’s prior purchase. The correct result should be 2013-03-28.

Line 3 is correct because the user’s subscription lapsed before she re-subscribed.

Line 4 is also wrong for the same reason as line 2. The correct result for the expiration date should be 2015-02-28

The existing calculation incorrectly adds the [monthsPurchased] to the [timeStamp] without accounting for prior [monthsPurchased]. Renewals are consistently wrong.

Discussion
Am I overthinking this? I mean, it’s not exactly a unique use case. Maybe I don’t need to bother with expiration dates in the [UserLog]. Maybe the calculation should reside in the parent [User] table. I’ll need one there anyway to report the user status: Are they paid up or not?

I just think it’s cleaner to see a — correct — expiration date in the log.

Result
Download the prototype here.
LDprototype_subscription.fmp12

Thanks,
=L=

Hosted Solutions Moved to FMS13

We’re excited to announce that our hosted solutions have been moved to a new server: FileMaker Server 13.

Two solutions are affected by the move:
1. LDriskAssessment
2. LDworkOrders

If you downloaded the solutions before Jul 16, 2014, be sure to download the new versions now.

THE DEADLINE FOR UPDATING YOUR EXISTING SOLUTIONS IS JUL 31, 2014.

After the deadline, your existing data will be lost if / when you update the solutions. So, don’t delay. Please update now.

To update your solutions, tap About from the home screen, then tap Check for Update.

First time users can download the solutions from our Store.

If you have any difficulties or questions, please get in touch.

We hope this doesn’t cause too much inconvenience. The move was necessary to take advantage of FMS13 features.

Thanks,
=L=

How to Replace Paper Forms

FileMaker Go is a great way to replace paper forms. It works on iPad, iPhone and iPod Touch. And it’s free.

You’ll need FileMaker Pro Advanced to develop the FM Go solutions. Plus FileMaker Server to deploy the solutions. And some advanced FileMaker Pro development techniques.

This post covers some of the technical aspects of how to develop and deploy FM Go solutions, and also some aspects of user behavior: What compels users to switch, and how can you ease them into technology without overwhelming them?

LD iOS Solutions
Examples of FileMaker Go solutions are showcased and available for download in our Store.

Compel Your Users to Switch
There’s no sense investing in an FM Go solution unless you can get users to switch from paper to iOS. And an easy way to do that is to start with what they already know. Don’t get carried away with new features too soon in the process.

Part of the process of going paperless is the initial transition. After that, you can enhance and transform the user’s experience with added functionality, but for now focus on the familiar.

The best way to compel users to switch from paper to your cool new FileMaker Go solution is to start with something familiar. Make your solution look like the user’s paper form. Not a skeuomorph. Just similar enough to be familiar.

SAMR Model by Ruben Puentedura

Ruben R. Puentedura, PhD built a model — called SAMR — to help educators integrate technology into teaching and learning. SAMR stands for Substitution, Augmentation, Modification, and Redefinition, suggesting the order in which to integrate technology into a user’s workflow.

Deploy the Solution
Designing and developing the FM Go solution is relatively easy. Deploying it to your users’ devices is a little tricky. Here are some suggestions to keep you on track:
1. Cater to single users (for now).
2. Allow users to work offline.
3. Allow users easy access to the solution.
4. Give users one-click updates.
5. Do it without syncing.

Stick with single users to start. They can share their forms by emailing them. Multi-user scenarios offer far more possibilities and opportunities to further integrate technology and transform the user experience. And we’ll explore some of these scenarios later on. But for now we’re focused on the familiar, remember, or “Substitution” as Dr. Puentedura posits.

The solutions showcased in our Store are good examples of single-user forms deployed on FM Go. Each solution is easily accessible, and easy to update. Each solution is self-contained, allowing users to work offline; no WiFi of cell signal required.

Developer Links
Here are some helpful links for all you do-it-yourselfers:
1. Importing to FileMaker Go
2. Deleting a FileMaker Go File
3. Colibri Solutions’ One-Click technique. Be prepared for several hours of scripting and debugging. Use custom dialogs to report progress on your iOS device as you step through the scripts. When you’re done debugging, disable the dialogs.

Support
Replace paper forms and eliminate the time associated with processing paper. We’ll design, develop, and deploy a FileMaker Go solution to replace your paper forms. Contact us today.

Importing to FileMaker Go

Importing records from one file to another is a great way to keep everything local on an iPad or an iPhone. I use this technique to process updates of our iOS Solutions.

When a user checks for updates, the Solution creates a local backup on the user’s device, and the new version imports the user’s data from the backup. This keeps the user’s data private and eliminates the need to sync single-user solutions with a hosted file.

Beware File Type
Don’t make the same mistake I did; choose the right file type when mapping the import. The default File Type is “All Available”, which results in Error Code 3. The correct File Type is “FileMaker Pro Files”.

screenshots courtesy of skywillmott
screenshots courtesy of skywillmott

skywillmott explains how to map the import correctly. An excerpt from his post on FileMaker’s TechNet follows. (Thank you sky.)

You will need to use FileMaker Pro to set up a script to do the import when the file is used on FileMaker Go…
 
Firstly in the target file (the one you will be importing records into) do an import from the source file using FileMaker Pro, and make sure the field mapping is set up right…
 
Then create a new script that: 
1. Sets up the source file path as a variable, e.g. Set Variable: $path = Get ( DocumentsPath ) & “sourcefile.fmp12”
 
2. Does the ‘Import Records…’ script step. When you add this to the list of script steps, it will use the field mapping from your previous import…. Make sure you also make sure the checkboxes for ‘Perform without dialog’, ‘Specifiy data source’ and ‘Specify import order’ are all on. In the options for ‘Specifiy data source’, make sure the source is set to ‘File…’ and then in the File Path List, just type in ‘$path’ and also make sure that the File Type popup menu option is set to ‘FileMaker Pro Files’!
 
3. Copy the sourcefile.fmp12 and targetfile.fmp12 files to FileMaker Go and open targetfile.fmp12 and run the import script to check it works… From thereon, the source file can be replaced at any time and the import re-run….

Sample File
Here’s a sample file with a script that imports records to an FM Go file: LDprototype_import.fmp12. It’s best downloaded to your iPad or iPhone to test, and to your computer to analyze.

TechNet Members
Details are available to FileMaker TechNet Members here.

See it in Action
The technique explained here is used in our own LD iOS Solutions, which are available for free download in our store.

Deleting a FileMaker Go File

Deleting a FileMaker Go file is easy to do manually: swipe, tap, and it’s gone. But what about scripting the deletion? Piece of cake. Simply export a zero found set.

FileMaker Go
Download FileMaker Go

Case Study – Updating a FileMaker Solution
It helps to understand when it’s appropriate to delete an FM Go file from an iPad or an iPhone. Let’s say you want to deploy periodic updates of a FileMaker solution to an iOS device without syncing. When a user checks for updates, the solution creates a local backup of itself, and the new version imports the user’s data from the backup. This keeps the user’s data private and eliminates the need to sync single-user solutions with a hosted file.

But what happens to the backup? After the import, it’s no longer needed, and should be deleted.

Sample File
Here’s a sample file with a script that deletes an FM Go file. LDprototype_delFile.fmp12. It’s best downloaded to your iPad or iPhone to test, and to your computer to analyze.

TechNet Members
Details are available to FileMaker TechNet Members here.

See it in Action
The technique explained here is used in our own LD iOS Solutions, which are available for free download in our store.

How to Sync FM Go

Charting a Sync Solution
Charting a Sync Solution

***UPDATE Jul 23, 2014***
Katherine Russell updated the iOS Sync Guide. FileMaker TechNet members can download it here. Some chatter on the forum about sample files. I may get around to updating mine but first, I’m going to try EasySync.

Check it out. EasySync is an “open source, alternative sync framework for the FileMaker platform.” Sounds promising, and sure beats reading the Guide (sorry Katherine). Also has obvious advantages over commercial products. More.

Why Sync
Why bother syncing local FileMaker Go files to a server? Hosted files on a server allow multiple users to share their data, and local files allow users to work offline. If you want users to share data and work offline you’ll need a solution that syncs the two.

How to Sync
Start by reading Katherine Russell’s FileMaker Sync Guide. It’s the best source on the subject. Not exactly an easy read, so be warned. Especially you beginners out there.

I read the Guide in some detail, and edited it with lessons learned, typos, and suggestions. I also made a flowchart to illustrate an alternative (quicker?) method of collecting and processing $IDs to sync. It’s the last page on the edited version.

The edited version.

The original version.

Next Steps
Build the sync files described in the Guide and ask for help if you need it. I coach students on how to build the files step by step. We use the same table names, the same field names and the same script steps used in the Guide. Very handy if you need to refer back.

The three files are:
1. DeployedOnGo.fmp12
2. HostedOnServer.fmp12
3. SyncConnector.fmp12

Reserve a your private lesson today. Contact us now.